MATLAB之最干货(三)

MATLAB之最干货(三)——图像绘制

很快,到了我们的图像绘制环节,在研究中,图像绘制是很常用的,对研究的数据进行直观体现。下面,我们就开始今天的内容——matlab中的图像绘制,肘子~~

首先,变量备用,用来下面举例子

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

一、二维曲线的绘制

1.基本函数

(1)plot(y) ,y为向量

plot(y1);  % 纵坐标为y的值;横坐标自动为元素序号(角标+1),此处为1~9

(2)plot(y) ,y为矩阵

figure;   % 开启新绘图窗口,下一次绘图在新窗口
y = [y1',y2'];
plot(y);  % 当y为矩阵,按每一列画出曲线,颜色自动区分

(3)plot(x,y) ,xy为向量

plot(x,y1);

(4) plot(x1, y1, x2, y2…)

plot(x,y1,x,y2);  %在同一个窗口绘制两条曲线

在这里插入图片描述

2.线性图形格式设置

(1)线的颜色,样式

plot (x,y1,'b:o');  %蓝色 点线 圆圈

% b蓝 g绿 r红 c青 m紫 y黄 k黑 w白 % -实线 :点线 --虚线 -.点画线 % .实点 o圆圈 x叉 +十字 *星号
s方块 d钻石 v下三角 ^上三角 <左三角 >右三角 p五角星 h六角星


(2)坐标轴

plot(x,y1);
axis([-1*pi,3*pi,-1.5,1.5]);  %规定横纵坐标范围

此例坐标轴为x→ [-pi - 3pi], y→[-1.5 - 1.5]

3.图形修饰

(1)标题标签

title('a title') ;  %图像标题
xlabel ('this is x') % x轴标记,yz 同理

(2)图例设置

legend('hahaha','location','best');  %str的顺序与绘图顺序一致; 'best'指图例位置最佳化,还有其他位置

在这里插入图片描述
(3)图形保持

plot(x,y1);
hold on ; %在原有的窗口y1曲线上增加绘制下一个图形
plot(x,y2); %y2在同一个窗口被绘制
hold off;

(4)分割绘制

subplot(2, 2, 1);  % 分割成2x2区域,在第一块区域绘制下一个图形
plot(x, y1);  % y1被绘制在4块区域的第一块
subplot(2, 2, 2);  % 分割方法相同,区域改变
plot(x, y2);  % y2在第二块区域

在这里插入图片描述

二、二维特征图绘制

1.柱状图

bar(x, y, width, '参数');

% x横坐标向量,m个元素; y为向量时,每个x画一竖条共m条,矩阵mxn时,每个x画n条;
% width宽度默认0.8,超过1各条会重叠;
% 参数有grouped分组式,stacked堆栈式; 默认grouped
% bar垂直柱状图,barh水平柱状图,bar3三维柱状图,barh3水平三维柱状图(三维多一个参数detached, 且为默认)

2.饼状图

pie(x, explode, 'lable'); 

% x为向量显示每个元素占总和百分比, 为矩阵显示每个元素占所有总和百分比
% explode向量与x同长度,为1表示该元素被分离突出显示,默认全0不分离
% pie3绘制三维饼图

3.直方图

 hist(y, n);  % y为向量,把横坐标分为n段绘制
 hist(y, x);  % x为向量,用于指定每段中间值, 若取N = hist(y, x), N为每段元素个数。

4.离散数据图

 stairs(x, y, 'b-o');  % 阶梯图,参数同plot
 stem(x, y, 'fill');  % 火柴杆图,参数fill是填充火柴杆,或定义线形
 candle(HI, LO, CL, OP);  % 蜡烛图:HI为最高价格向量,LO为最低价格向量,CL为收盘价格向量,OP为开盘价格向量

5.向量图

 compass(u, v, 'b-o');  % 罗盘图横坐标u纵坐标v
 compass(Z, 'b-o');  % 罗盘图复向量Z
 feather(u, v, 'b-o');  % 羽毛图横坐标u纵坐标v
 feather(Z, 'b-o');  % 羽毛图复向量Z
 quiver(x, y, u, v);  %(x, y)为起点(u, v)为终点向量场图

6.极坐标图

% polar(theta, rho, ‘b-o’); % 极角theta, 半径rho

  theta = -pi:0.01:pi;
  rho = sin(theta);
  polar(theta, rho, 'b')

7.对数坐标图

  semilogx(x1, y1, 'b-o');  % 把x轴对数刻度表示, semilogy是y轴对数刻度表示,loglog是两个坐标都用对数表示

8.双纵坐标

 plotyy(x1, y1, x2, y2, 'fun1', 'fun2');  % fun规定了两条条线的绘制方式,如plot,semilogx,semilogy,loglog,stem等

9.函数绘图

 f = 'sin(2*x)';
 ezplot(f, [0, 2*pi]);  % 绘制f并规定横坐标范围,也有[xmin, xmax, ymin, ymax]
 x = '2*cos(t)';
 y = '4*sin(t)';
 ezplot(x, y);  % 绘制x(t),y(t)[0, 2*pi]图像, 也可以在最后用[tmin, tmax]规定t的范围

三、三维曲线曲面绘制

1.三维曲线

x = 0:0.1:2*pi;
y = sin(x);
z = cos(x);
plo3 (x,y,z,'b-*');

在这里插入图片描述
2.三维曲面

(1)三维网格

x = -5:0.1:5;  % 规定了x轴采样点,也规定了x轴范围
y = -4:0.1:4;  % 规定了y轴采样点,也规定了y轴范围
[X, Y] = meshgrid(x, y);  % 得到了xoy面网格点
Z = X.^2+Y.^2;
mesh(X, Y, Z)  % XY是meshgrid得到的网格点,Z是网格顶点,c是用色矩阵可省略

在这里插入图片描述
(3)三维表面图

x = -5:0.1:5;  
y = -4:0.1:4;
[X, Y] = meshgrid(x, y);
Z = X.^2+Y.^2;  % 以上部分同上
surf(X, Y, Z)  % 与上一个类似

在这里插入图片描述
到此,这一节内容也就结束了,希望可以带给大家一些需要的知识,如果上诉有啥码字错误希望大家批评指正(风里雨里,评论区等你),有遇到看不懂的地方欢迎留言评论。
好了,不再比比,下次见,继续干货
别忘了点个赞支持哦,没有大家对弟弟的支持,弟弟狗篮子不是~~

猜你喜欢

转载自blog.csdn.net/weixin_49005845/article/details/109724044