Borrar filtros
Borrar filtros

Extracting data from a figure with two y axis (created by using plotyy)

15 visualizaciones (últimos 30 días)
I have a figure with a common x axis and two y axis with different values (one at the left and one at the right). Each axis is needed for plotting different data points on the same graph. I need to obtain directly from the figure the data. I have used the following for this:
open ('TaSe2_n.fig');
D=get(gca,'Children'); %get the handle of the line object
XData=get(D,'XData'); %get the x data
YData=get(D,'YData'); %get the y data
Datafromfig=[XData' YData']; %join the x and y data on one array nx2
Datafromfig=[XData;YData]; %join the x and y data on one array 2xn
Datafromfig1=transpose(Datafromfig);
The problem with this code is that it only allows me to obtain the data of ONE of the axis (the right one to be exact) whilst the data from the left axis isn't stored. My idea would be to continue on this code so that I will be able to obtain in the same file matrix (Datafromfig) a column for the x-values, a second column for y1 values and a third column for the y2 values. Is this possible? Any help would be highly appreciated. Guillermo

Respuestas (2)

weisheik
weisheik el 24 de En. de 2015
Editada: weisheik el 24 de En. de 2015
Dear,
axesObj = get(gcf, 'Children');
datObj1 = get(axesObj(1), 'Children');
datObj2 = get(axesObj(2), 'Children');
ydat1 = get(datObj1, 'YData');
ydat2 = get(datObj2, 'YData');

Arvind
Arvind el 19 de Mayo de 2014
Hello Everyone!
I have the same question. Can someone help. Thanks in advance.

Categorías

Más información sobre Two y-axis en Help Center y File Exchange.

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by