Dear All, I am trying two plot two lines in the same axes using double Y-axis. I found an example in the help pages and adjusted for my needs. I can not get it, why does it show an error:
Error using: set
Value must be a handle
The error occurs in the third line of the following code:
line(ax,ay,'Color','r','LineWidth',2);
ax1 = gca;
set(ax1,'Ycolor','r','YLim',[0 500], 'ylabel', 'Distance(m)', 'FontSize',22, 'FontName','Helvetica');
ax2= axes('Position',get(ax1,'Position'),'YAxisLocation','right', 'Color','none', 'YColor','b', 'YLim',[0 3], 'ylabel','Distance(m)', 'FontSize',22, 'FontName','Helvetica');
line(bx,by,'Color','b','LineWidth',2,'Parent',ax2);
Please could you give me any clue?

 Réponse acceptée

Andreas Goser
Andreas Goser le 26 Avr 2012

0 votes

The issue is in how you use YLABEL. Try:
set(ax1,'ylabel', 'Distance(m)');
The point is that you need a different type of handle here, not the axis handle. Insteadt run
set(ax1,'Ycolor','r','YLim',[0 500], 'FontSize',22, 'FontName','Helvetica');
set(get(gca,'YLabel'),'String','Distance (m)')

2 commentaires

Elis Kulla
Elis Kulla le 26 Avr 2012
Worked like a beauty.
It looks like the handles for axes are different from those of labels.
Thank you Mr. Goser
Andreas Goser
Andreas Goser le 26 Avr 2012
Yes, it is sometimes tricky with all the parent and child handles!

Connectez-vous pour commenter.

Plus de réponses (0)

Catégories

En savoir plus sur Creating, Deleting, and Querying Graphics Objects dans Centre d'aide et File Exchange

Community Treasure Hunt

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

Start Hunting!

Translated by