如何在matlab中针对单轴在单个条形图中表示多个值?

时间:2015-07-09 08:25:10

标签: matlab graph bar-chart

我想在单个条形图中表示9值,单独表示它们很容易但我想准确地在单个图形中表示它们。 观察结果如下:

x=[0.22,0.34,0.42]
bar(x,0.1,'stacked')
somenames={'IND Relation' ; 'DIS Relation' ; 'EQ Relation'}
set(gca,'xticklabel',somenames)
ylabel('F1')

x=[0.25,0.43,0.53]
bar(x,0.1,'stacked')
somenames={'IND Relation' ; 'DIS Relation' ; 'EQ Relation'}
set(gca,'xticklabel',somenames)
ylabel('F1')

x=[0.22,0.43,0.56]
bar(x,0.1,'stacked')
somenames={'IND Relation' ; 'DIS Relation' ; 'EQ Relation'}
set(gca,'xticklabel',somenames)
ylabel('F1')

第一个块(5行)的样本输出是: enter image description here

同样地,我对其他两个观察也有单独的图形,我想在一个条形图中以相同的顺序将所有三个图形表示在一起,即包含总计9条形的单个条形图前三个条形应该代表前三个使用IND DISEQ条形成的值以及类似的下一组值,直到9的每个x值都被表示。

我已经尝试过但没有获得所需的结果:

x = [0.22,0.34,0.42; 0.25,0.43,0.53; 0.22,0.43,0.56];
bar(x,0.1,'stacked')
somenames={'IND Relation' ; 'DIS Relation' ; 'EQ Relation'}
set(gca,'xticklabel',somenames)
ylabel('F1')

1 个答案:

答案 0 :(得分:0)

试试这个:

x=[0.22,0.25,0.22;
   0.34,0.43,0.43;
   0.42,0.53,0.56]

bar(x);
group_labels={'IND Relation' ; 'DIS Relation' ; 'EQ Relation'}
set(gca,'xticklabel',group_labels);
ylabel('F1');