使用 bar 函数在 bar 之间放置 space
Putting space between bars using bar function
我正在尝试绘制 16 个柱,其中 8 个属于一组。我想给这个组赋予红色,其他 8 个属于另一个给定蓝色的组。我想将条形图成对排列,每对包含一个来自红色组和一个来自绿色组。我尝试了以下方法:
bar(num1,info(1:2:end);
bar(num2, info(2:2:end);
其中 info
包含我要绘制的 16 个值,num1=1:2:numel(info)
和 num2=2:2:numel(info)
。如果我这样做,所有的条都被放置在它们的邻居附近,并且条之间没有间隙。理想情况下,为了提高可视化效果,成对之间应该有 space,但成对内没有 space。例如,bar1bar2 <space> bar3bar4 <space> bar5bar6<space>
...
有人可以帮我解决这个间距问题吗?非常感谢!
参见docs for bar。您可以将 info
重塑为 2xN(而不是其当前形状 1x2N),然后使用单个 bar
命令绘制 2 系列,它会处理间距。
从文档中查看这张图片:
如果您想继续按自己的方式行事,只需调整 num1
和 num2
:
N = numel(info) / 2;
num1 = (1:N) * 3;
num2 = (1:N) * 3 + 1;
我正在尝试绘制 16 个柱,其中 8 个属于一组。我想给这个组赋予红色,其他 8 个属于另一个给定蓝色的组。我想将条形图成对排列,每对包含一个来自红色组和一个来自绿色组。我尝试了以下方法:
bar(num1,info(1:2:end);
bar(num2, info(2:2:end);
其中 info
包含我要绘制的 16 个值,num1=1:2:numel(info)
和 num2=2:2:numel(info)
。如果我这样做,所有的条都被放置在它们的邻居附近,并且条之间没有间隙。理想情况下,为了提高可视化效果,成对之间应该有 space,但成对内没有 space。例如,bar1bar2 <space> bar3bar4 <space> bar5bar6<space>
...
有人可以帮我解决这个间距问题吗?非常感谢!
参见docs for bar。您可以将 info
重塑为 2xN(而不是其当前形状 1x2N),然后使用单个 bar
命令绘制 2 系列,它会处理间距。
从文档中查看这张图片:
如果您想继续按自己的方式行事,只需调整 num1
和 num2
:
N = numel(info) / 2;
num1 = (1:N) * 3;
num2 = (1:N) * 3 + 1;