我有两组数据,我想使用条形图进行绘图。但问题是这两组数据的规模完全不同。如果我只使用bar(A)
,它看起来像这样:分组但第二个数据集几乎不可见,因为比例。
但是,如果我使用plotyy(x,y1,x,y2)
,绘图将是这样的:两组数据的比例不同,但条形图没有分组,第二组数据与第一组重叠。
所以我想知道是否有一种方法可以绘制像第一个图那样分组的条形图,但是两个数据集使用单独的 y 比例尺?或者有没有办法调整第二个图中条形图的水平偏移,使其看起来像“分组”。
谢谢!
我有两组数据,我想使用条形图进行绘图。但问题是这两组数据的规模完全不同。如果我只使用bar(A)
,它看起来像这样:分组但第二个数据集几乎不可见,因为比例。
但是,如果我使用plotyy(x,y1,x,y2)
,绘图将是这样的:两组数据的比例不同,但条形图没有分组,第二组数据与第一组重叠。
所以我想知道是否有一种方法可以绘制像第一个图那样分组的条形图,但是两个数据集使用单独的 y 比例尺?或者有没有办法调整第二个图中条形图的水平偏移,使其看起来像“分组”。
谢谢!
这使用 的plotyy(x1,y1,x2,y2,fun1,fun2)
变体plotyy
:
%// Set these three variables as desired
offset = (x(2)-x(1))/8;
width = (x(2)-x(1))/4;
colors = {'b','g'};
%// Do the plot
plotyy(x-offset,y1,x+offset,y2, @(x,y) bar(x,y,width,colors{1}), @(x,y) bar(x,y,width,colors{2}));
如果您希望 x-ticks 仅出现在使用的 x 值上:
h = plotyy(x-offset,y1,x+offset,y2, @(x,y) bar(x,y,width,colors{1}), @(x,y) bar(x,y,width,colors{2}));
set(h,'xtick',x)