Two x-axis one y-axis double line plot in MATLAB GUI, GUIDE
5 views (last 30 days)
Show older comments
Dear Community,
I am trying to create a plot in Matlab GUI (GUIDE) that concists of two x-axis, one y-axis and two lines in one plot environment. The plot and code works flawless on its own but I am not able to receive the correct figures in the GUI-environment. The problem is that I cannot plot multiple axes in the GUI. The code I use, presented below, works without error messages but it only plot the second "copyobj", i.e. the first curve disappears and the axis is shown in the bottom instead of top as defined. However, you can see the other line behind the GUI-area, i.e. the GUIDE is plotting both curves but not in the same Axes-environment, and not simultaneously. How can I approach the task?
In the code, "plotName", consists of plotName=fullfile(folder,filename), hence "tmpaxes" is a cell of (2,1) with the different plots saved in its rows. Can it be that both lines are "normalized" when the second should be a character, similar to the axis
Kind Regards Andreas
h=openfig(plotName,'invisible');
set(get(handles.SP_axes, 'Parent'), 'HandleVisibility', 'on')
axes(handles.SP_axes)
ax = findobj(h,'type','axes');
print = handles.SP_axes;
xl = get(get(ax(1),'xlabel'),'string'); % line bottom
x2 = get(get(ax(2),'xlabel'),'string'); % line top
y1 = get(get(ax(2),'ylabel'),'string');
tmpaxes = findobj(h,'Type','axes');
cla(handles.SP_axes)
copyobj(allchild(tmpaxes(2)),handles.SP_axes);
xlabel(handles.SP_axes,xl)
ylabel(handles.SP_axes,y1)
handles.SP_axes2 = axes('Units', 'character');
set(handles.SP_axes2, 'Position',get(handles.SP_axes,'Position'),...
'XAxisLocation','top',...
'YAxisLocation','right',...
'Color', 'none',...
'XColor','r'); %position the new axis on the earlier existing axis
copyobj(allchild(tmpaxes(1)),handles.SP_axes2);
xlabel(handles.SP_axes,x2)
0 Comments
Answers (1)
See Also
Categories
Find more on 2-D and 3-D Plots in Help Center and File Exchange
Products
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!