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;

以上代码运行后结果:

相关推荐
hqxstudying5 分钟前
Java异常处理
java·开发语言·安全·异常
青春不败 177-3266-05201 小时前
MATLAB近红外光谱分析技术及实践技术应用
随机森林·机器学习·支持向量机·matlab·卷积神经网络·遗传算法·近红外光谱
wjs20243 小时前
状态模式(State Pattern)
开发语言
我命由我123453 小时前
Kotlin 数据容器 - List(List 概述、创建 List、List 核心特性、List 元素访问、List 遍历)
java·开发语言·jvm·windows·java-ee·kotlin·list
liulilittle3 小时前
C++ TAP(基于任务的异步编程模式)
服务器·开发语言·网络·c++·分布式·任务·tap
励志要当大牛的小白菜5 小时前
ART配对软件使用
开发语言·c++·qt·算法
爱装代码的小瓶子7 小时前
数据结构之队列(C语言)
c语言·开发语言·数据结构
Maybe_ch8 小时前
.NET-键控服务依赖注入
开发语言·c#·.net
超浪的晨8 小时前
Java UDP 通信详解:从基础到实战,彻底掌握无连接网络编程
java·开发语言·后端·学习·个人开发
终焉暴龙王8 小时前
CTFHub web进阶 php Bypass disable_function通关攻略
开发语言·安全·web安全·php