plot函数画曲线并用legend函数为曲线标记

本文介绍了在Matplotlib中如何使用不同的线型、颜色和描点标记来定制图表样式,并展示了如何设置图例的位置。


常见的线型字符有:'-'(直线), '--'(虚线), ':'(点线), '-.'(点画线) 等。 

常见的颜色字符有:'r'(red,红色), 'b'(blue,蓝色), 'g'(green,绿色), 'c'(cyan,青色), 'k'(black,黑色), 'w'(white,白色), 'm'(magenta,品红), 'y'(yellow,黄色) 等。

常见的描点标记有: '.'(点), 'o'(圆圈), 's'(方块), '^'(三角形), 'x'(叉), '*'(五角星), '+'(加号) 等。

常见的放置位置有: 'best', 'upper right', 'upper left', 'lower left', 'lower right', 'right', 'center left', 'center right', 'lower center', 'upper center', 'center' 等。

代码实例:

import matplotlib.pyplot as plt
x = [i for i in range(10)]
y = [i**2 for i in range(10)]
plt.plot(x, y, "-bo", label="try_just")    #线型,颜色,标记,名称
plt.legend(loc="right")     #放置位置
plt.show()

结果:

               
     





                
### 使用 Matlab 的 `plot` 函数绘制多条曲线 在 Matlab 中,可以通过一次调用 `plot` 函数并传递多个数据组来实现多条曲线的绘制。以下是具体方法以及代码示例。 #### 数据准备 为了绘制多条曲线,通常需要先准备好一组横坐标向量和对应的纵坐标向量集合。例如,假设我们希望在同一张图上绘制正弦波 (`y1`) 和余弦波 (`y2`): ```matlab % 定义 x 坐标范围 x = 0 : pi / 20 : 2 * pi; % 计算两个函数值 y1 = sin(x); y2 = cos(x); ``` 上述代码中,`x` 是从 0 到 \(2\pi\) 的一系列点,步长为 \(\frac{\pi}{20}\),而 `y1` 和 `y2` 分别表示这些点上的正弦值和余弦值[^3]。 #### 单次调用 `plot` 绘制多条曲线 通过将多个 `(x, y)` 对作为输入参数传入 `plot` 函数,可以直接绘制多条曲线。每一对 `(x, y)` 可以附加不同的线条属性(颜色、标记符、线型等)。以下是一个完整的例子: ```matlab % 绘制两条曲线 figure; plot(x, y1, '-r', 'DisplayName', 'sin(x)', ... % 正弦波:红色实线 x, y2, '--b', 'DisplayName', 'cos(x)'); % 余弦波:蓝色虚线 % 添加图例 legend show; % 设置图形标题和轴标签 title('Sine and Cosine Waves'); xlabel('Angle (rad)'); ylabel('Value'); grid on; % 显示网格 ``` 在此代码片段中: - `-r` 表示一条红色实线; - `--b` 表示一条蓝色虚线; - `'DisplayName'` 参数用于指定图例中的名称。 #### 合并绘图与保持当前图像 另一种方式是使用 `hold on` 来保留现有图像,并逐条添加新曲线。这种方法适用于动态更新图表的情况: ```matlab % 创建一个新的 figure 窗口 figure; % 首先绘制第一条曲线 plot(x, y1, '-r', 'DisplayName', 'sin(x)'); hold on; % 开启 hold 功能 % 接着绘制第二条曲线 plot(x, y2, '--b', 'DisplayName', 'cos(x)'); % 关闭 hold 并显示图例 hold off; legend show; % 设置其他图形选项 title('Multiple Curves with Hold On/Off'); xlabel('X-axis Label'); ylabel('Y-axis Label'); grid on; ``` 这种方式允许逐步构建复杂的可视化效果[^2]。 --- ### 示例扩展至三条或多条曲线 如果要增加更多曲线,则只需继续提供额外的数据集及其样式描述即可。例如,加入一个平方函数 `y3=x.^2`: ```matlab % 新增第三个函数 y3 = x .^ 2; % 绘制三者于同一图中 figure; plot(x, y1, '-r', 'DisplayName', 'sin(x)', ... x, y2, '--b', 'DisplayName', 'cos(x)', ... x, y3, ':k', 'DisplayName', 'x^2'); % 黑色冒号线代表抛物线 legend show; title('Three Functions Comparison'); xlabel('Input Value'); ylabel('Output Value'); grid on; ``` 此代码展示了如何一次性绘制三个不同样式的函数曲线。 --- ### 总结 以上介绍了两种主要的方法——单次调用 `plot` 或结合 `hold on/off` ——来完成多条曲线的绘制任务。无论哪种方法都支持高度定制化设置,从而满足各种科研和技术需求。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值