MATLAB之折线图、柱状图、饼图以及常用绘图技巧

时间:2022-04-19 00:02:38

MATLAB之折线图、柱状图、饼图以及常用绘图技巧

一.折线图

参考代码:

%图1:各模式直接成本预测
%table0-table1为1*9的数组,记录关键数据
table0 = data_modol0(:,9)'; %现状模式
table1 = data_modol1(:,9)'; %模式一
table2 = data_modol2(:,9)'; %模式二
table3 = data_modol3(:,9)'; %模式三
x=2017:2030;
plot(x,table0,'k-o','linewidth',1.5 ,'markersize',2.5);
hold on
plot(x,table1,'b-o','linewidth',1.5 ,'markersize',2.5);
hold on
plot(x,table2,'g-o','linewidth',1.5 ,'markersize',2.5);
hold on
plot(x,table3,'r-o','linewidth',1.5 ,'markersize',2.5);
title('各模式下直接成本预测','FontSize',12);
legend('现状模式','模式一','模式二','模式三');
set (gca,'xtick',(2017 : 1 :2030));

MATLAB之折线图、柱状图、饼图以及常用绘图技巧

二.柱状图

参考代码:

%图12:各模式分期收益
Y = [9.05 14.12 26.69;15.29 20.32 32.40;12.14 17.56 29.27; 10.59 15.94 28.81];
figure;
bh=bar(Y);
set(gca,'XTickLabel',{'现状模式','模式一','模式二','模式三'});
ylim([0,max(max(Y)+1)]);
legend('前期','中期','后期');
title('各模式分期收益(单位:亿元)');
xlabel('模式');
ylabel('收益(亿元)');

MATLAB之折线图、柱状图、饼图以及常用绘图技巧

三.Excel(2007)绘制立体柱状图

(1)新建excle表格,填写4行2列数据:现状模式 914.4218,模式一 2.05E+03,模式二 1.02E+03,模式三 867.2144

(2)选中表格中的数据,然后依次点击“插入”、“柱状图”、“圆柱图”,可生成基本的立体柱状图

(3)在菜单栏可选择不同的图表布局,颜色,以及更改标题

(4)右击图中空白处,选择“选择数据”,可更改删减各图例

(5)右击柱状图,可选择添加数据标签,以及数据标签格式设置等

MATLAB之折线图、柱状图、饼图以及常用绘图技巧

四. 饼图

参考代码:(饼图标签中含有条目信息和比例)

%图13:各分项成本比例的变化趋势分析
%分类,收运,设施,处理,技术,社会,补贴,收益----社会-收益
x = sum(data_modol0(1:3,1:8));%现状模式
x(6) = x(6) -x(8);
table = x(:,1:7);
label={'分类成本','收运成本','设施成本','处理成本','技术成本','社会成本','补贴成本'};%输入标签
bili=table/sum(table); %计算比例
baifenbi=num2str(bili'*100,'%1.2f');%计算百分比
baifenbi=[repmat(blanks(2),length(table),1),baifenbi,repmat('%',length(table),1)];
baifenbi=cellstr(baifenbi);
Label=strcat(label,baifenbi');
pie(table, Label);
title('现状模式下各分项成本比例分析');

MATLAB之折线图、柱状图、饼图以及常用绘图技巧

五.常用绘图技巧

(1)坐标轴

axis([xmin xmax ymin ymax zmin zmax]);%坐标范围

axis off;                       % 去掉坐标轴

axis tight;                     % 紧坐标轴

axis equal;                     % 等比坐标轴

axis auto: % 使用默认设置

set(gca,'XLim',[0 1.5]); %X轴的数据显示范围

set(gca,'XTick',[0:0.1:1.5]); %设置要显示坐标刻度

set(gca,'XTickLabel',[0:0.1:1.5]); %给坐标加标签

set(gca, 'XColor','red');                  % X轴的颜色

xlabel('T','FontName','Times New Roman','FontSize',14)

ylabel('a','FontName','Times New Roman','FontSize',14,'Rotation',0)

(2)图例

legend('a','Location','best');

'NorthEast'       图例标识放在图右上方(默认)

 'NorthWest      图例标识放在图左上方

 'SouthEast'      图例标识放在图右下角

 'SouthWest'     图例标识放在图左下角

(3)颜色和线型

颜色:

'r' 红色   'm' 粉红

'g' 绿色    'c' 青色

'b' 兰色    'w' 白色

'y' 黄色    'k' 黑色

线型:'-' 实线    '--' 虚线   ':' 点线   '-.' 点划线

'.' 用点号绘制各数据点 '^' 用上三角绘制各数据点

'+' 用'+'号绘制各数据点 'v' 用下三角绘制各数据点

'' 用''号绘制各数据点 '>' 用右三角绘制各数据点

' .' 用'.'号绘制各数据点 '<' 用左三角绘制各数据点

's'或squar 用正方形绘制各数据点'p' 用五角星绘制各数据点

'd'或diamond用菱 形绘制各数据点 'h' 用六角星绘制各数据点

这些选项可以连在一起用,如:'-.g'表示绘制绿色的点划线,'g+'表示用绿色的 '+'号绘制曲线

(4)logspace函数

作用:可按对数等间距地分布来产生一个向量,其调用格式为:

x=logspace(x1,x2,n);

这里,x1 表示向量的起点;x2表示向量的终点;n表示需要产生向量点的个数(一般可以不给出,采用默认值50)

(5)修饰:

坐标轴的标题:title函数

坐标轴的说明:xlabel和ylabel函数

图形加网格:grid函数

鼠标点选屏幕上的点:ginput函数