在MATLAB中绘制条形图

时间:2013-12-07 15:20:42

标签: matlab graph plot

我在MATLAB中有一个矩阵(4,100)。它的每一列都是第一个元素 矩阵(1,i)越小,第4个元素矩阵(4,i)越大。像

这样的东西
    matrix(:,1) = - 0.3; 0,4; 0,4; 0,9

如何绘制条形图我可以将条形图绘制为两条边之间的距离?

每个列必须用on bar表示,以便最后生成100个条。

由于

2 个答案:

答案 0 :(得分:2)

我不确定这是否是您想要的,但您可以绘制不同颜色的所有条形图,从最大的(matrix的最后一行)到最小的matrix的第一行),以便较小的那些堆叠,但让更大的那些看到:

matrix = [.1 .2 .3 .4 .5
          .2 .3 .5 .6 .7
          .4 .4 .8 .7 .8
          .5 .6 .9 .8 .9]; %// example data
hold on
colors = {'r','g','b','c'}; %// define colors
for n = size(matrix,1):-1:1 %// iterate over rows, from last to first
    bar(matrix(n,:), colors{n})
end

enter image description here

答案 1 :(得分:0)

我假设edges你的意思是第一和第四个元素。

您可以使用:

diff = abs(matrix(1,:) - matrix(4,:)); // distance
bar(diff); // bar plot