Effacer les filtres
Effacer les filtres

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

15 vues (au cours des 30 derniers jours)
Guillermo Lopez
Guillermo Lopez le 29 Mai 2012
Commenté : Amine Rabehi le 6 Mar 2017
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

Réponses (2)

weisheik
weisheik le 24 Jan 2015
Modifié(e) : weisheik le 24 Jan 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 le 19 Mai 2014
Hello Everyone!
I have the same question. Can someone help. Thanks in advance.

Catégories

En savoir plus sur Two y-axis dans Help Center et File Exchange

Community Treasure Hunt

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

Start Hunting!

Translated by