Dynamically plot graphs to axes component
7 次查看(过去 30 天)
显示 更早的评论
Is it possible to dynamically add a number of "axes components" onto a GUIDE fig. I want to display a graph of data for each file in a directory. But this number can vary. Sometimes 2, sometimes 6. Thanks
0 个评论
回答(2 个)
Paulo Silva
2011-5-11
To remove all the subplots from your GUI do this:
delete(findall(gcf,'type','axes'))
3 个评论
Walter Roberson
2011-5-12
Is there a fixed total size in which all the plots are to go? If so then subplot() . Or is the figure to grow to fit the plots? If so, what if you run out of screen? Is a new figure to be created for each plot? Or do you want to use fixed size per plot but have the area scrollable to see the other plots?
Patrick Kalita
2011-5-12
You can use the axes command. You'll probably want to set the 'Position' property, and store the handle to the axes in the handles structure.
handles.axes1 = axes('Position', [x1 y1 w1 h1]);
handles.axes2 = axes('Position', [x2 y2 w2 h2]);
...
When you need to remove an axes from the GUI, you should pass the axes handle to the delete function:
delete(handles.axes1);
2 个评论
Patrick Kalita
2011-5-12
You could also store all the axes handles together in a cell array as one field in the handles structure:
handles.axes{1} = axes( ... );
handles.axes{2} = axes( ... );
另请参阅
类别
在 Help Center 和 File Exchange 中查找有关 Creating, Deleting, and Querying Graphics Objects 的更多信息
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!