MATLAB绘图

 

 

student(1).name = 'jone';

>> student(1).id = 'jd@.ca';

>> student(1).number = 30107489;

>> student(1).grade = [100 56 66 99]

 

student(2).name = 'cone';

student(2).id = 'gj@.ca';

student(2).number = 30107490;

student(2).grade = [88 43 66 99]

 

 

cell: 

  用法 详见b站matlab教程_4变量与档案存取

a=magic(4);

c = mat2cell(a,[1 1 1 1],[2,2])

c{1,1}

 

 

绘图:

MATLAB在多组变量绘图时,可将曲线以不同的颜
色,不同的线型及标记点表示出来.这 些选项如下表所示:
各种颜色属性选项
选 项 意 义 选 项 意 义
'r' 红色 'm' 粉红
'g' 绿色 'c' 青色
32
'b'
兰色 'w' 白色
'y' 黄色 'k' 黑色
各种线型属性选项
选 项 意 义 选 项 意 义
'-' 实线 '--' 虚线
':' 点线 '-.' 点划线
各种标记点属性选项
选 项 意 义 选 项意 义
'.' 用点号绘制各数据点 '^' 用上三角绘制各数据点
'+' 用'+'号绘制各数据点 'v' 用下三角绘制各数据点
'*' 用'*'号绘制各数据点 '>' 用右三角绘制各数据点
' .' 用'.'号绘制各数据点 '<' 用左三角绘制各数据点
's'或squar 用正方形绘制各数据点'p' 用五角星绘制各数据点
'd'或diamond用菱 形绘制各数据点 'h' 用六角星绘制各数据点
这些选项可以连在一起用,如:'-.g'表示绘制绿色的点划线,'g+'表示用绿
色的 '+'号绘制曲线.

默认曲线

holdon  % 这个指令要请求后面在绘图程序不要覆盖掉前面的绘图程序,并把多个图绘制在一起

plot(sin(0:pi/20:2*pi));

plot(cos(0:pi/20:2*pi));

plot(2*cos(0:pi/20:2*pi));

hold off

 

绘制点图(带颜色)

hold on  % 这个指令要请求后面在绘图程序不要覆盖掉前面的绘图程序,并把多个图绘制在一起

plot(sin(0:pi/20:2*pi), 'or--');

plot(cos(0:pi/20:2*pi), '*k:');

plot(2*cos(0:pi/20:2*pi));

hold off

 

 

绘制多个函数图像并添加注解:

 

x = 0:0.5:4*pi;

y = sin(x);  h =cos(x);  w = 1./(1+exp(-x));

g = (1/(2*pi*2)^0.5)...

   .*exp((-1.*(x-2*pi).^2)./(2*2^2));

plot(x,y,'bd-',x,h,'gp:',x,w,'ro-',x,g,'c^-');

legend('cos(x)','sin(x)','kkk','jik')  

%  图形注解是按照legend里边给出在名字顺序依次命名

 

 

添加图形题目和横纵坐标名称

title() xlable()  ylable  zlable

 

x =0:0.1:2*pi; y1 = sin(x); y2 = exp(-x);

plot(x,y1,'--*',x,y2,':o');

xlabel('t = 0 to 2\pi');  % \表示转意,使图例变为2π

ylabel('sin(t)和e^{-x}的值');  % 同理,{}  也表示转义

title('function plot of sin(t) and e^{-x}');

legend('sin(t)','e^{-x}');

 

 

图像调整与美化(figure adjustment)

边框  (x  y 轴的美化)

x =linspace(0,2*pi,1000); y = sin(x);

h =plot(x,y);

set(gca,'xlim',[0,2*pi]);  % 设置x轴长度

set(gca,'ylim',[-1.2,1.2]);

 

set(gca,'fontsize',25);  % 设置边框字号大小

 

%%法1

set(gca,'xtick',0:pi/2:2*pi);  % 设置x轴tick(刻度)间隔

set(gca,'xticklabel',0:90:360)  % 设置x轴label的数值及间隔

 

%%法2

%set(gca,'FontName','symbol');

%set(gca,'XTickLabel',{'0', 'p/2', '3p/2', '2p'});

%%把x轴数值转义为π并显示在坐标轴上   (貌似我的mat无法显示)

 

 

图像线型美化  (line style and width)

x =linspace(0,2*pi,1000); y = sin(x);

h =plot(x,y);

%%法1

set(h,'linestyle','-.',...

    'linewidth',7.0,'color','g');

%%法2

%plot(x,y,'-.g','linewidth',7.0);

 

 

对点的美化

x =rand(20,1);

set(gca,'fontsize',40);

plot(x,'-md','linewidth',2,'MarkerEdgecolor','k',...

    'markerFacecolor','g','markersize',10);

%MarkerEdgecolor 强调点的边框颜色

%markerFacecolor 强调点内部颜色

%markersize 强调点大小

xlim([1,20]);

 

 

画多个图像

(分为figure1、2、3…)

x =-10:0.1:10;

y1 =x.^2 - 8;

y2 =exp(x);

figure,plot(x,y1);  % 画出多个figure(几个不同的页面)

figure,plot(x,y2);

 

 

 

把图形画在一个figure上(只有一个图形界面)还有边框网格线的设置

t =0:0.1:2*pi; x = 3*cos(t); y = sin(t);

subplot(2,2,1);plot(x, y); axis normal

%normal 画出的图是正形

subplot(2,2,2);plot(x, y); axis square

%square 画出的图是xy轴长度相同

subplot(2,2,3);plot(x, y); axis equal

%equal 画出的图xy轴单位长度相同

subplot(2,2,4);plot(x, y); axis equaltight

%equal tight 画出的图,自己Google去

 

%%% 不要边框,只保留绘出的图

%axis on

%axis off

%%% 把figure上右边界的边框开启关闭

%box on

%box off

%%% 打开网格线

%grid on

%grid off

 

 

绘图进阶

1、  对数图       可能不会用,看一下网上的做法

2、  双y轴图:  plotyy()

 

3、  直方图(histogram)

4、  bar chart(条形图)

5、  stackd and horizontal bar charts (竖直和水平条形图)

6、  pie chart  (饼 图)

7、  polar chart(极坐标图)

8、  stair and stem charts (阶梯和火柴棍图)

9、  boxplot and error bar (统计论文使用较多)

10、   fill()填充颜色

 

 

3D plot

function:

线图:plot3

面图:surf      surfc   surface       meshc


更新中......

 

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值