- select the second plot then click "more proprieties" you will find your data in xdata and ydata
- do the same to the third plot
Transfer data from a figure to variable
    1 view (last 30 days)
  
       Show older comments
    
Hi,
I'm using Matlab Simulink to simulate the behavior of a electric circuit.
I obtain the average transfer function by using "averaging spectrum analyzer" block. What i need to do is to obtain the data of this average transfer function. I mean, i want to obtain in a vector x the range of frequency and in a vector y the range of gain.
How can i do it?
Thanks in advanced, Néstor
0 Comments
Accepted Answer
  Azzi Abdelmalek
      
      
 on 6 Sep 2012
        
      Edited: Azzi Abdelmalek
      
      
 on 7 Sep 2012
  
      open axes proprieties of your figure,then click "more proprieties"
be sur that you select the plot (not only the box)
 x=get(gco,'XData');y=get(gco,'YData');
5 Comments
  Azzi Abdelmalek
      
      
 on 27 Oct 2012
				Néstor, be sur to click on the plot, not just on the windows, you will see your points highlighted. when you are done go to matlab command and write
x=get(gco,'XData');y=get(gco,'YData');
More Answers (1)
  Robert Cumming
      
 on 7 Sep 2012
        to do it without interacting with the mouse at all you can get to the data through the children of the axes handle: e.g.
figure; 
plot ( magic(10) ); 
axes_children = get ( gca, 'children' );
axes_lines = findobj ( axes_children, 'type', 'line' );
xdata = get ( axes_lines, 'xdata' )
ydata = get ( axes_lines, 'ydata' )
4 Comments
  Azzi Abdelmalek
      
      
 on 7 Sep 2012
				It was said in his question. that's what "averaging spectrum analyzer" do
  Robert Cumming
      
 on 7 Sep 2012
				Ok - I've never used that so wouldn't know... You learn something new everyday :)
See Also
Products
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!

