Matlab 简单绘图与排版

作者: Nextphy | 来源:发表于2017-11-08 19:46 被阅读286次
matlab启动界面 来自百度百科
对于很多教师与学生,Matlab是做数值计算很好的一款软件。收集、整理、分析数据十分的方便,我们也可以通过Matlab画出相对比较好看的图。这里简单总结下Matlab的画图方式与排版,供初学者参考、交流。
Matlab基本都是封装好的函数,所以用起来非常简单,这里只是简单示例,希望大家多多交流。因为好的图表呈现方式让人一目了然,如果你在学术论文或平时阅读的读物中发现很好的图像呈现方式就分享出来,大家一起交流探讨如何绘制,共同学习进步。

1 将两个图画在同一坐标系下

放在同一坐标系下便于比较异同

主要运用matlab中的 hold on , 基本代码如下:

1. x=0:0.001:3*pi;
2. plot(x,sin(x),'r');
3. hold on 
4. plot(x,cos(x),'g');
5. hold off
6. xlabel('x'),ylabel('y'),legend('sin','cos')
sin-cos.png

2 分窗口绘图

为了便于比较,但放在同一个坐标系下又怕画面很乱

主要运用matlab中的subplot,基本代码如下:

1. figure,
2. x=0:0.001:3*pi;
3. subplot(2,1,1)
4. plot(x,sin(x),'r');
5. xlabel('x'),ylabel('y'),legend('sin(x)')
6. subplot(2,1,2)
7. plot(x,cos(x),'g');
8. xlabel('x'),ylabel('y'),legend('cos(x)')
sin-cos.png

3 共用横坐标图像依次竖直排开

有共同的x参数,比较y参数的异同

其实还是运用matlab中的subplot,只不过是利用position控制坐标轴的位置,用xticklabel更改坐标轴属性,基本代码如下:

1. figure,
2. x=0:0.001:3*pi;
3. subplot(2,1,1)
4. plot(x,sin(x),'r');legend('sin(x)')
5. set(gca,'xticklabel',[]);
6. set(gca,'box','on');
7. set(gca,'position',[0.1 0.5 0.8 0.4]);
8. subplot(2,1,2)
9. plot(x,cos(x),'g');legend('cos(x)')
10. set(gca,'box','on');
11. set(gca,'position',[0.1 0.1 0.8 0.4]);
12. xlabel('x')
sin-cos.png

4 双y轴

拥有共同的x,建立两个y轴

主要利用matlab中plotyy这个基本函数,基本代码如下:

1. figure,
2. x=0:0.001:3*pi;
3. a=plotyy(x,sin(x),x,cos(x))
4. ylabel(a(1),'sin(x)')
5. ylabel(a(2),'cos(x)')
sin-cos.png

5 三维坐标下呈现多条二维曲线

防止数据叠加,造成画面混乱,三维下比较异同

主要运用matlab plot3函数,基本代码如下:

1. x=1:0.001:5*pi;
2. y1=ones(1,length(x))*1;
3. y2=ones(1,length(x))*2;
4. y3=ones(1,length(x))*3;
5. z1=sin(x);
6. z2=cos(x);
7. z3=sin(x)+cos(x);
8. figure,
9. plot3(x,y1,z1),xlabel('x'),ylabel('y'),zlabel('\itf(x)'),
10. set(gca,'yticklabel',[])
11. hold on 
12. plot3(x,y2,z2)
13. plot3(x,y3,z3)
14. grid on;
15. legend('sin','cos','sin+cos')
sin-cos-sin+cos.png

6 二维数组的网格图 与不同视角观察

不同的方向观察三维图

主要运用matlab的mesh函数与view函数,具体代码如下:

1. % A=imread('prof.jpg');
2. A1=imread('gauss.jpg');
3. figure,
4. % mesh(rgb2gray(A));%title('平顶光束能量分布')
5. mesh(rgb2gray(A1)); %title('高斯光束光强分布')
6. xlabel('x'),ylabel('y'),zlabel('Intensity')
7. figure,
8. mesh(rgb2gray(A1));xlabel('x'),ylabel('y')
9. view(0,90)
mesh图.png
俯视视角.png

7 散点图

不想将数据点连成线

主要利用matlab中scatter函数,基本代码如下:

1. figure,
2. x=0:0.1:2*pi;
3. y=2*sin(x);
4. scatter(x,y)
5. xlabel('x'),ylabel('y')
散点图.png

将会不定时更新,目的为了同大家多多交流也是自己内容整理的一个备份。如果你看见画图方式很好,让人很容易理解图中数据的信息,可以分享出来大家一起学习进步。

相关文章

  • Matlab 简单绘图与排版

    1 将两个图画在同一坐标系下 放在同一坐标系下便于比较异同 主要运用matlab中的 hold on , 基本代码...

  • MATLAB简单绘图

    简单函数图: 合并函数作图 条形图 子模块画图 你能看到效果如下: 画图之中,你可能需要修改线型、颜色、点型。请你...

  • Matplotlib知识点总结

    `Matplotlib是Python中最流行的绘图库,它模仿MATLAB中的绘图风格,提供了一整套与MATLAB相...

  • matplotlib学习1

    matplotlib 的pyplt是Matplot中的绘图接口,它提供与MATLAB相似的绘图接口。绘图终点要素A...

  • 文章预告

    GMT 绘图系列 Matlab 论文绘图系列

  • Matplotlib安装与用法总结

    matplotlib是非常强大的python绘图库,功能与MatLab一样非常全面,其api也与MatLab类似。...

  • 海报设计如此简单!2019最新400集CorelDRAW零基础精

    CorelDraw是一款矢量绘图与排版平面设计软件它的功能可大致分为两大类:绘图与排版,CorelDraw更适用于...

  • matplotlib绘图入门详解

    matplotlib是受MATLAB的启发构建的。MATLAB是数据绘图领域广泛使用的语言和工具。MATLAB语言...

  • 用matlab画一张SCI插图要求的y = sin(x)曲线图

    参考文章 《Matlab plot绘图颜色详解》 《SCI规范作图(Matlab)+简洁干货+源代码+免费》 《如...

  • Matlab绘图Tips集合

    matlab的绘图和可视化能力是不用多说的,可以说在业内是家喻户晓的。Matlab提供了丰富的绘图函数,比如ez*...

网友评论

本文标题:Matlab 简单绘图与排版

本文链接:https://www.haomeiwen.com/subject/hfremxtx.html