Matlab具有强大的绘图功能,其基本用法是浏览帮助文档就足够了。 但是,在帮助文档中并不总是很容易找到一些自定义功能。 或者是隐藏(暗)隐藏(黑)技巧。 首先,让我们看看在创建条形图时可能会感到困惑的一些问题。 我们主要通过示例代码实现了以下四个功能。 其中,标记方法是tricky的。 最终绘制的效果图如下图所示。
1 )条形图中的每个柱设置不同的颜色(用于显示不同的类别),并附加图例;
2 )将各柱表示的数值作为标签添加到柱中,垂直设定文字方向;
3 )设定横坐标和纵坐标的其他技巧;
4 )将图表背景设置为白色
5 )注意字符串的连接方法。
上述功能单独实现的方法其实有很多,但同时实现所有功能的方法相当困难,主要是很多任务很难全自动完成(人工代码干预的因素很大)。 参考步骤如下所示。
figure1=figure('color ',[1 1 1]; p1X=[1]; p1Y=[0.067]; p2X=[2]; p2Y=[0.177]; p3X=[3]; p3Y=[0.067]; p4X=[4]; p4Y=[0.096]; P1=bar(P1X,p1Y ); 保持接通; P2=bar(P2X,p2Y ); 保持接通; P3=bar(P3X,p3Y ); 保持接通; P4=bar(P4X,p4Y ); %设置每个条形图的颜色set(p1、' FaceColor '、' red ' ); set(P2,' FaceColor ',' blue '; set(P3,' FaceColor ',' m '; set(P4,' FaceColor ',' g '; 在%条形图中显示数值(字符方向垂直) txt1=text ) p1x,p1Y 0.01,strcat ) num2str (p1y * 100 ),“%”),“rotation”,90 ); TXT2=text(P2X,p2Y 0.01,Strcat ) num2str (p2y * 100 ),' % ' ),' rotation ',90 ); TXT3=text(P3X,p3Y 0.01,Strcat ) num2str (p3y * 100 ),' % ' ),' rotation ',90 ); TXT4=text(P4X,p4Y 0.01,Strcat ) num2str (p4y * 100 ),' % ' ),' rotation ',90 ); set(txt1,' fontsize ',20 ); set(txt2,' fontsize ',20 ); set(txt3,' fontsize ',20 ); set(txt4,' fontsize ',20 ); ylim ([ 0,0.24 ]; ylabel(RR ); set(GCA,' XTickLabel ',{} ) set(GCA,' fontsize ',24 ); set(GCA,' YTick ',[ 0,0.04,0.08,0.12,0.16,0.20,0.24 ] ) set ) GCA,' YTicklabel ',{'0% ','4% ',% set(legend1,' FontSize ',20 ); set(legend1,' box ',' off ';
本节介绍如何使用Matlab创建折线图。 主要包括:
1 )设定折线中标记的形状和大小、折线的线性和粗细
2 )设置横坐标标签(注意使用TeX语法写乘方);
3 )设定横纵轴的可取范围;
4 )设置图例的形式和位置等;
5 )注意Matlab的延续符号为“.”。
k_st=10:3:34; max _ ces _ ST=[ 0.251014,0.251014,0.089194, 0.089194,0.089194,0.000014,0.000014 ]; min _ ces _ ST=[ 0.002519,0.002519,0.002519, 0.001307,0.001307,0.001307,0.001307,0.001307 ]; RF _ ces _ ST=[ 0.002519,0.001307,0.001307, 0.001062,0.001062,0.00001,0.00001 ]; area _ ces _ ST=[ 0.010109,0.010109,0.010109, 0.008745,0.008745,0.006179,0.001982 ]; figure1=figure('color ',[1 1 1]; Semilogy(k_st,rf_ces_st,' r-o ', k_st,min_ces_st,' b-v ', k_st,max_ces_st Ylabel('RR ',' FontSize ',36 ); xlim ([ 10,34 ]; ylim ([ 1e-6,1 ]; set(GCA,' fontsize ',30 ); set(GCA,' XTick ',[ 10,13,16,19,22,25,28,31,34 ]; set(GCA,' YTick ',[ 1e-6,1e-4,1e-2,1 ]; set(GCA,' XTicklabel ',{'10 ',' 13 ',' 16 ',' 19 ',' 22 ',' 25 ',' 28 ',' 31 ',' 34'} ); set(GCA、' YTicklabel '、{'0^{ }、' 10^{-4}、' 10^{-2}、' 10 ^ {-0 } ' ); legend1=legend(RF-MinVar,) minvar,) MaxDom,) Area-Greedy,) location,) southwest ); set(legend1,' FontSize ',24 ); set(legend1,' box ',' off ';
执行上述代码的结果如下。
(正文结束) )