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;

以上代码运行后结果:

相关推荐
懒大王爱吃狼1 小时前
Python教程:python枚举类定义和使用
开发语言·前端·javascript·python·python基础·python编程·python书籍
秃头佛爷2 小时前
Python学习大纲总结及注意事项
开发语言·python·学习
待磨的钝刨2 小时前
【格式化查看JSON文件】coco的json文件内容都在一行如何按照json格式查看
开发语言·javascript·json
XiaoLeisj4 小时前
【JavaEE初阶 — 多线程】单例模式 & 指令重排序问题
java·开发语言·java-ee
励志成为嵌入式工程师5 小时前
c语言简单编程练习9
c语言·开发语言·算法·vim
捕鲸叉5 小时前
创建线程时传递参数给线程
开发语言·c++·算法
A charmer5 小时前
【C++】vector 类深度解析:探索动态数组的奥秘
开发语言·c++·算法
Peter_chq5 小时前
【操作系统】基于环形队列的生产消费模型
linux·c语言·开发语言·c++·后端
记录成长java7 小时前
ServletContext,Cookie,HttpSession的使用
java·开发语言·servlet
前端青山7 小时前
Node.js-增强 API 安全性和性能优化
开发语言·前端·javascript·性能优化·前端框架·node.js