我有三个向量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中做到这一点?
答案 0 :(得分:1)
作为plotyy
的输入提供的每个X,Y对被视为绘图函数的单独输入。话虽这么说,绝对有可能为同一y尺度生成多个图。
所以X1
和Y1
(plotyy
的前两个输入)被视为将两个输入传递给bar
并符合文档
BAR(X,Y)将M×N矩阵Y的列绘制为M个N组 竖条。向量X必须没有重复值
对X2
的{{1}}和Y2
输入也接受相同的格式。因此,如果您想将plotyy
和v1
分组到相同的垂直范围内,您会想要执行以下操作。
v2