matlab中plot的一些用法

文章目录

一、基本用法

matlab 复制代码
x = 0:0.1:10;
y = sin(x);
plot(x, y); % 绘制 x 对 y 的图

二、绘制多个数据集

matlab 复制代码
y1 = sin(x);
y2 = cos(x);
plot(x, y1, x, y2); % 在同一图中绘制两条曲线

三、设置线型、颜色

matlab 复制代码
plot(x, y, '-r*'); % 使用红色实线和星号标记绘制曲线

常见线型、颜色和标记的选项:

线型:'-' (实线), '--' (虚线), ':' (点线), '-.' (点划线)

颜色:'r' (红色), 'g' (绿色), 'b' (蓝色), 'k' (黑色), 'y' (黄色), 'm' (洋红), 'c' (青色)

标记:'+', 'o', '*', '.', 'x', 's', 'd', '^', 'v', '>', '<', 'p', 'h'

四、添加标题和标签

matlab 复制代码
plot(x, y);
title('Sine Wave'); % 添加标题
xlabel('x'); % 添加 x 轴标签
ylabel('sin(x)'); % 添加 y 轴标签

五、添加图例

matlab 复制代码
plot(x, y1, x, y2);
legend('sin(x)', 'cos(x)'); % 添加图例

六、设置轴范围

matlab 复制代码
plot(x, y);
axis([0 10 -1 1]); % 设置 x 轴范围为 [0, 10],y 轴范围为 [-1, 1]

七、绘制网格

matlab 复制代码
plot(x, y);
grid on; % 显示网格
grid off; % 隐藏网格

八、 在同一图中绘制多个子图

matlab 复制代码
subplot(2, 1, 1); % 创建 2 行 1 列的第一个子图
plot(x, y1);
title('Sine Wave');

subplot(2, 1, 2); % 创建 2 行 1 列的第二个子图
plot(x, y2);
title('Cosine Wave');

九、绘制带误差条的图

matlab 复制代码
y = sin(x);
e = 0.1 * rand(size(x)); % 误差
errorbar(x, y, e); % 带误差条的图

十、绘制半对数图和对数图

matlab 复制代码
semilogx(x, y); % x 轴为对数刻度
semilogy(x, y); % y 轴为对数刻度
loglog(x, y); % x 和 y 轴均为对数刻度

十一、绘制填充区域图

matlab 复制代码
x = 0:0.1:10;
y1 = sin(x);
y2 = cos(x);
fill([x fliplr(x)], [y1 fliplr(y2)], 'r'); % 填充 sin(x) 和 cos(x) 之间的区域

十二、综合案例

matlab 复制代码
x = 0:0.1:10;
y1 = sin(x);
y2 = cos(x);

subplot(2, 1, 1);
plot(x, y1, '-r*'); % 使用红色实线和星号标记绘制 sin(x)
title('Sine Wave');
xlabel('x');
ylabel('sin(x)');
legend('sin(x)');
grid on;

subplot(2, 1, 2);
plot(x, y2, '--bo'); % 使用蓝色虚线和圆圈标记绘制 cos(x)
title('Cosine Wave');
xlabel('x');
ylabel('cos(x)');
legend('cos(x)');
grid on;

以上代码运行后结果:

相关推荐
总有刁民想爱朕ha8 小时前
车牌模拟生成器:Python3.8+Opencv代码实现与商业应用前景(C#、python 开发包SDK)
开发语言·python·数据挖掘
小菜全9 小时前
uniapp新增页面及跳转配置方法
开发语言·前端·javascript·vue.js·前端框架
人衣aoa9 小时前
Python编程基础(八) | 类
开发语言·python
晚云与城9 小时前
今日分享:C++ Stack和queue(栈与队列)
开发语言·c++
小莞尔9 小时前
【51单片机】【protues仿真】基于51单片机停车场的车位管理系统
c语言·开发语言·单片机·嵌入式硬件·51单片机
张烫麻辣亮。9 小时前
golang-gin包
开发语言·golang·gin
yuluo_YX9 小时前
Go Style 代码风格规范
开发语言·后端·golang
百锦再10 小时前
脚本语言的大浪淘沙或百花争艳
java·开发语言·人工智能·python·django·virtualenv·pygame
上位机付工11 小时前
C#与倍福TwinCAT3进行ADS通信
开发语言·c#
励志不掉头发的内向程序员11 小时前
STL库——二叉搜索树
开发语言·c++·学习