【问题标题】:Adding an x axis label with 2 y axis labels添加带有 2 个 y 轴标签的 x 轴标签
【发布时间】:2012-04-26 19:56:02
【问题描述】:

我可以将 2 个 y 轴添加到 octave/matlab 图中,但是当我尝试使用 xlabel('Frequency in 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

【问题讨论】:

    标签: matlab plot gnuplot octave


    【解决方案1】:

    确保在引用绘图上的特定轴之一后调用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');
    

    【讨论】:

      【解决方案2】:

      为了向某些轴添加标签(xlabelylabel),您还可以将此轴引用作为命令调用的第一个参数传递。这样,您还可以保证您处于@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,你会发现一切都大大减慢了。

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 2020-11-05
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2020-09-14
        • 2015-10-06
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多