我可以将2个y轴添加到八度/ matlab图中,但是当我尝试使用 xlabel('频率以Hz为单位)在图的底部添加x轴时,它不会不要出现
[ax h1 h2]=plotyy(xx,yy,xx,yy2); %plot two y axes and 1 x-axis
axes(ax(1)); ylabel('Phase Angle in degrees');
axes(ax(2)); ylabel('Amplitude');
任何人都知道如何解决这个问题,所以x轴也会出现
我正在使用octave 3.2.4 / matlab
答案 0 :(得分:2)
确保在参考绘图中的某个特定轴后调用xlabel()
。您只需要执行一次,但由于双轴,在特定轴上下文之外调用x-label将不起作用。以下适合我在Octave 3.2.4中使用。
xx = [1,2,3];
yy = [10,11,12];
yy2 = [-10,-11,-12];
[ax h1 h2]=plotyy(xx,yy,xx,yy2);
axes(ax(1)); xlabel('Frequency in Hz'); ylabel('Phase Angle in degrees');
axes(ax(2)); ylabel('Amplitude');
答案 1 :(得分:1)
为了向某些轴添加标签(xlabel
或ylabel
),您还可以将此轴参考作为命令调用的第一个参数传递。通过这种方式,您还可以保证您在@EMS指出的正确背景下。
xx = [1,2,3];
yy = [10,11,12];
yy2 = [-10,-11,-12];
[ax h1 h2]=plotyy(xx,yy,xx,yy2);
xlabel(ax(1),'Frequency in Hz'); ylabel(ax(1),'Phase Angle in degrees');
ylabel(ax(2),'Amplitude');
这在性能方面也更好,因为如果你多次调用axes
,你会看到一切都在慢慢减慢。