您的位置:首页 > 编程语言 > MATLAB

matlab 绘图

2015-01-25 13:31 375 查看
原文地址:matlab 绘图作者:我已经长大1、直方图

bar,bar3,barh 和bar3h,其中bar 和bar3 分别用来绘制二维和三维竖直方图,barh 和b

ar3h 分

别用来绘制二维和三维水平直方图,调用格式是:

bar(x,y) 其中x 必须单调递增或递减,y 为n m× 矩阵,可视化结果为m 组,每

组n 个垂直柱,也就是把y 的行在一起,同一列的数据用相同的颜色表示;

bar(x,y,width)
(或bar(y,width))指定每个直方条的宽度,如width>1,则直方条会重

叠,默认值为width=0.8;

bar(…,’grouped’) 使同一组直方条紧紧靠在一起;

bar(…,’stack’) 把同一组数据描述在一个直方条上。

例5.3.2

>> y=[5 3 2 9;4 7 2 7;1 5 7 3];

>> subplot(2,2,1),bar(y)

>> x=[5 9 11];

>> subplot(2,2,2),bar3(x,y)

>>
subplot(2,2,3),bar(x,y,'grouped')

>>
subplot(2,2,4),bar(rand(2,3),.75,'stack')

论文中需要画图进行比较,感觉还是matlab画起来比较方便,先把自己画的图及matlab代码放上。
   y=[300
311;390 425; 312 321; 250 185; 550 535; 420 432; 410
520;];
   b=bar(y);
   grid
on;
   ch
= get(b,'children');
  
set(gca,'XTickLabel',{'0','1','2','3','4','5','6'})
  
set(ch,'FaceVertexCData',[1 0 1;0 0 0;])
  
legend('基于XXX的算法','基于YYY的算法');
  
xlabel('x axis ');
  
ylabel('y axis');

下面是在网上看到的一些关于matlab柱状图的相关信息:

原文地址:matlab画柱状图[zz]作者:wjybit

记录一下matlab画柱状图。
 
从问题分类任务的算法比较中抽出。

-------------------------------------------------------------------
data = [1.0,1.0,0.565,0.508,0.481,0.745];
b =
bar(data);
ch =
get(b,'children');
set(ch,'FaceVertexCData',[4;2;3;1;5;6])
%set(gca,'XTickLabel',{'Sina
all','Sina travel','S&S','x','mi'})
%set(gca,'XTickLabel',{'Sina
all','Sina
travel','S&S','STM','CHI','MI'})
set(gca,'XTickLabel',{'SVM(TF)','SVM(TFIDF)','Bayes','Rocchio(TF)','Rocchio(TFIDF)','类文档排名分类'})

axis([0 7 0.0 1.0]) 

%%%

ylabel('micro F-measure');
-------------------------------------------------------------------

<
d2e7
a href="http://photo.blog.sina.com.cn/showpic.html#blogid=66a04dc50100hpfp&url=http://s15.sinaimg.cn/orignal/64eb3d33t83189cbfb40e">


--------------------------------------------------------------------------------------
 
data = [20.457,45.578;12.016,22.422];
b =
bar(data);

ch =
get(b,'children');

set(gca,'XTickLabel',{'训练过程','测试过程'})

legend('基于类文档排名的分类算法','结合bigram的类文档排名分类算法');

ylabel('所用时间(单位:秒)');
 
--------------------------------------------------------------------------------------




Matlab
Bar图如何为每个bar设置不同颜色?

Matlab
Bar图如何为每个bar设置不同颜色?
2009年05月15日星期五15:39
在Matlab中很容易创建Bar图:

data = [3, 7, 5, 2;4, 3, 2,
9;6, 6, 1, 4];
b =
bar(data);
 
 
 
 




 
在Matlab中如何让Bar图的每一个Bar颜色不同?
下面是一个例子:




data = [3, 7, 5, 2;4, 3, 2,
9;6, 6, 1, 4];
b =
bar(data);
ch =
get(b,'children');
set(ch{1},'FaceVertexCData',[1;1;1;1;2;2;2;2;3;3;3;3;4;4;4;4])
set(ch{2},'FaceVertexCData',[1;1;1;1;2;2;2;2;3;3;3;3;4;4;4;4])
set(ch{3},'FaceVertexCData',[1;1;1;1;2;2;2;2;3;3;3;3;4;4;4;4])
set(ch{4},'FaceVertexCData',[1;1;1;1;2;2;2;2;3;3;3;3;4;4;4;4])

解释:
[1;1;1;1;2;2;2;2;3;3;3;3;4;4;4;4]是要设置的颜色,要更改这里的颜色,既可以使用Indexed,也可以使用True
Color,详见FaceVertexCData help文档。
 
 
 
 





data = [3, 7, 5,
2];
b =
bar(data);
ch =
get(b,'children');
set(ch,'FaceVertexCData',[0
0 1;0 1 1;1 1 1;1 0 1;])
饼图
 
x=[1,2,3,4,5];
explode=[0,0,0,0,1];
labels={'第1份','第2份','第3份','第4份','第5份'};

最后画图:
%如果只要图
pie(x);

%不要分割,要标记
pie(x, labels);

%要分割,不要标记
pie(x, explode);

%要分割,要标记
pie(x, explode, labels);
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: