在MATLAB中用两个y轴和多个条形图绘制条形图

时间:2016-03-04 19:53:43

标签: matlab bar-chart

我有三个向量m1,v1和v2都是等长的。向量m1具有范围[1000,10000]中的值,而v1和v2具有范围[1,2]中的值。我想绘制一个包含所有三个向量的条形图,但我希望向量v1和v2使用比m1更小的y轴比例。我找到了多个来源(例如Matlab bar plot grouped but in different y scales)推荐使用以下函数来执行此操作,使用两个向量(m1和v1)

plotyy(xrange-offset, m1, xrange+offset, v1, 'bar','bar')

但是,我无法弄清楚如何以与v1相同的比例将v2添加到此图中。有没有办法在MATLAB中做到这一点?

1 个答案:

答案 0 :(得分:1)

作为plotyy的输入提供的每个X,Y对被视为绘图函数的单独输入。话虽这么说,绝对有可能为同一y尺度生成多个图。

所以X1Y1plotyy的前两个输入)被视为将两个输入传递给bar并符合文档

  

BAR(X,Y)将M×N矩阵Y的列绘制为M个N组       竖条。向量X必须没有重复值

X2的{​​{1}}和Y2输入也接受相同的格式。因此,如果您想将plotyyv1分组到相同的垂直范围内,您会想要执行以下操作。

v2