数学建模社区-数学中国

标题: matlab条形图的大小调整,如何让他美观? [打印本页]

作者: 如果我能看得见    时间: 2014-9-1 22:51
标题: matlab条形图的大小调整,如何让他美观?
我有一个条形图但是他的比例很不合适,不美观,怎么去调整横纵坐标大小和条形图中的条条的高与宽?

作者: madio    时间: 2014-9-1 23:35
下面这个例子我详细写了注释,你可以看清楚一些语句是如何控制的
  1. Data = [ 10, 30, 40, 20, 0 ];
  2. diaData = diag( Data );
  3. pic = bar( diaData, 20 );%这个20就是控制柱的宽度的
  4. axis( [ 0 10 0 50 ] ); %横纵坐标轴所在的区间
  5. xlabel( '成绩类别' );
  6. set( gca, 'xtick', 1:2:10 );%1:2:10代表了横坐标的刻度序列
  7. set(gca,'box','off');
  8. %下面的代码可以设置X轴的刻度的标识,可以使用字母甚至汉字
  9. %set(gca,'XTickLabel',{'SVM(TF)','SVM(TFIDF)','Bayes','Rocchio(TF)','Rocchio(TFIDF)','类文档排名分类'})

  10. %图例及颜色
  11. C=[ 'k', 'r', 'b', 'm', 'g' ];  %储存的五种颜色的标识符
  12. [~,~,H,~]=legend( '优秀', '良好', '中等', '及格', '不及格' );    %这个地方版本低的matlab似乎会出
  13. for i = 1:length( H )                                                        %错误,只要把几个~换成不用的变量
  14.     set( H(i), 'facecolor', C(i) );                                            %就可以了
  15. end

  16. %柱及颜色
  17. P = findobj( pic, 'type', 'patch' );
  18. for n=1:length(P)
  19.     set( P(n), 'facecolor', C(n) );
  20. end
复制代码

作者: 如果我能看得见    时间: 2014-9-1 23:37
madio,谢谢。
作者: Agent-Zero    时间: 2014-9-2 08:53
学习了。谢谢。




欢迎光临 数学建模社区-数学中国 (http://www.madio.net/) Powered by Discuz! X2.5