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

[初学笔记] matlab的 二维绘图 plot 和系列功能

2017-10-20 10:42 721 查看
主要参考两个网址

一个是yiibai教程的绘图部分

一个是这个专门汇总了plot相关函数的解释和使用,但是缺少例子
http://blog.csdn.net/wangcj625/article/details/6287735/
1  plot 的用法

要使用
plot
函数来绘制图形,需要执行以下步骤:

通过指定要绘制函数的变量
x
的值的范围来定义
x

定义函数,
y = f(x)

调用
plot
命令,如下:
plot(x,y)

以下示例将演示该概念。下面绘制
x
的值范围是从
0
100
,使用简单函数
y = x
,增量值为
5


创建脚本文件并键入以下代码 -

x = [-100:10:100];

y = x.^2;

plot (x,y)

2 label

写在最前面的是label名字,字体大小 FontSize,粗细 FontWeight,字体类型 FontName,这些无论是代码名字还是代码的内容都要用‘ ’

关于ylabel还有一个地方需要注意,如果用了 rotation的代码,则表示y可以取到负值

% Create xlabel

xlabel({'[ms]'},'FontWeight','bold','FontSize',12,...

    'FontName','Times New Roman');

% Create ylabel

ylabel('[V]','Rotation',360,'FontWeight','bold','FontSize',12,...

    'FontName','Times New Roman');

3 在一个图上绘制多个图形

(1)yiibai 教程上的例子

x = [0 : 0.01: 10];

y = sin(x);

g = cos(x);

plot(x, y, x, g, '.-'), legend('Sin(x)', 'Cos(x)')

(2)ch给我的例子,用了 hold on

v = [0 : 0.2: 10];

k = sin(v);

u = cos(v);

plot(k);

hold on

plot (u,'.-');

legend('Sin(x)', 'Cos(x)');

hold off

也可以直接用 hold all

4 线形

(1)规定线的粗细

LineWidth 

plot (v,u,':r','LineWidth',2);

(2)规定线形

LineSpec (Line Specification)

可以查看document

Marker 或者是 LineStyle

规定 MarkerSize

规定 MarkerFaceColor

规定 MarkerEdgeColor

plot(v,k,'b>','MarkerSize',3);

其中, '.-' 这个写法,相当于设定了第二条线的线性是加点的实线

'.' 为 点线

'--' 为虚线

默认是实线

线型
颜色
标记符号
- 实线
b蓝色
.   点
s 方块
: 虚线
g绿色
o 圆圈
d 菱形
-. 点划线
r红色
× 叉号
∨朝下三角符号
-- 双划线
c青色
+ 加号
∧朝上三角符号
 
m品红
* 星号
<朝左三角符号
 
y黄色
 
>朝右三角符号
 
k黑色
 
p 五角星
 
w白色
 
h 六角星
那么如果想不在编程的时候还要加上prosperity的说明,那么可以混合写

比如 document里面的一个例子

5 图形的颜色 Color

 颜色
w
White
k
Black
b
Blue
r
Red
c
Cyan
g
Green
m
Magenta
y
Yellow
只要添加在plot函数里面,对应的y就可以了,跟规定线性是一样的。

5  轴刻度 axis

axis
命令用来设置轴刻度。可以通过以下方式使用
axis
命令为
x
y
轴提供最小和最大值:

轴刻度

axis square

axis equal

下面是document里面的help axis 材料

axis([xmin xmax ymin ymax zmin zmax cmin cmax])

可以设置x,y,z以及color scale的 阈值

sets the x-, y-, and z-axis limits and the color scaling limits (see caxis) of the current axes.

6 title

title('Sin(x) Graph','FontWeight','bold','FontSize',14,'FontName'...

    ,'Times New Roman');

7 一个图形的子图 subplot

subplot (m,n,p)

m, n 指的是放置图形的 行数和列数

即是,生成的图形的排列顺序,应该是一行放几个,一共有几行。。。

p 指的是放置图形的顺序位置

下面是我自己写的代码

v = [0 : 0.1: 10];

k = sin(v);

u = cos(5*v);

subplot (1,2,1);

plot(v,k);

hold on

subplot (1,2,2);

plot (v,u);

8 legend

legend(’图例1’,’图例2’,…) P190

9 create a line

10 text gtext

关于 text 以及 gtext 的使用要具体看 matlab的help document

text(x,y,’图形说明’)

text函数是在坐标点(x,y)处添加图形说明。(P88 或用gtext命令)。

也可以直接在text里面设置属性,但格式要改成,把所有的value的prosperity的name都要写上

下面是我写的

v = [0 : 0.1: 10];

k = sin(v);

u = cos(v);

plot(v,k,'b>','MarkerSize',3);

axis ([0 10, -3 3] );

hold on

plot (v,u,':r','LineWidth',2);

axis ([0 10, -3 3] );

text('String','minimum','FontSize',10,'Color','k',...

    'Position',[2.7983870967741935,-1.4109589041095887,0])

legend('Sin(x)', 'Cos(x)');

hold off

使用 gtext来进行编辑所写的文字的属性

text(3,-1,'minimum')

gtext ('minimum','FontSize',10,'FontColor','k')

11 clf

清除当前所有的图形 clear figure

12 generate the code of figure

最后可以生成这个figure的代码,是一个function文件,可以用于写script的时候插入,作为这一系列的figure的作图使用。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: