python画图画两个纵坐标
时间: 2023-07-11 08:40:24 浏览: 107
在Python中,你可以使用Matplotlib库来画图。要画两个纵坐标,可以使用双坐标轴(twinx)函数。以下是一个简单的示例代码:
```python
import matplotlib.pyplot as plt
# 创建一个画板
fig, ax1 = plt.subplots()
# 绘制第一个纵坐标的曲线
ax1.plot([1, 2, 3], [1, 2, 3], 'r-', label='y1')
ax1.set_xlabel('x')
ax1.set_ylabel('y1')
# 创建第二个纵坐标
ax2 = ax1.twinx()
# 绘制第二个纵坐标的曲线
ax2.plot([1, 2, 3], [3, 2, 1], 'b-', label='y2')
ax2.set_ylabel('y2')
# 添加图例
ax1.legend(loc=1)
ax2.legend(loc=2)
# 显示图形
plt.show()
```
在这个例子中,我们创建了一个画板和一个主坐标轴(ax1)。我们绘制了第一个纵坐标的曲线,并设置了x轴和y1轴的标签。接下来,我们使用twinx函数创建了第二个纵坐标轴(ax2),绘制了第二个纵坐标的曲线,并设置了y2轴的标签。最后,我们添加了图例并显示了图形。
相关问题
python画图两个纵坐标
如果您想在 Python 中绘制两个纵坐标的图形,可以使用 Matplotlib 库提供的 twinx() 方法。以下是一个简单的示例代码:
```python
import matplotlib.pyplot as plt
# 创建画布和两个子图
fig, ax1 = plt.subplots()
ax2 = ax1.twinx()
# 绘制第一个子图
ax1.plot([1, 2, 3, 4, 5], [10, 8, 6, 4, 2], 'g-', label='Line 1')
ax1.set_xlabel('X Label 1')
ax1.set_ylabel('Y Label 1')
# 绘制第二个子图
ax2.plot([1, 2, 3, 4, 5], [20, 16, 12, 8, 4], 'b--', label='Line 2')
ax2.set_ylabel('Y Label 2')
# 显示图例
ax1.legend(loc='upper left')
ax2.legend(loc='upper right')
# 显示图形
plt.show()
```
在上述代码中,我们首先创建了一个画布和两个子图 ax1 和 ax2。然后,我们使用 ax1 和 ax2 分别绘制了两个纵坐标的线条,并分别设置了它们的标签和颜色。接着,我们使用 set_xlabel() 和 set_ylabel() 方法设置了两个子图的横坐标和纵坐标的标签。最后,使用 legend() 方法显示图例,并使用 show() 方法显示图形。
python画双纵坐标图
好的,可以使用matplotlib库来画双纵坐标图。具体步骤如下:
1. 导入matplotlib库和numpy库
```python
import matplotlib.pyplot as plt
import numpy as np
```
2. 创建画布和子图
```python
fig, ax1 = plt.subplots()
```
3. 创建第一个坐标轴
```python
ax1.plot(x, y1, color='red', label='y1')
ax1.set_xlabel('x')
ax1.set_ylabel('y1')
```
4. 创建第二个坐标轴
```python
ax2 = ax1.twinx()
ax2.plot(x, y2, color='blue', label='y2')
ax2.set_ylabel('y2')
```
5. 添加图例
```python
ax1.legend(loc='upper left')
ax2.legend(loc='upper right')
```
6. 显示图像
```python
plt.show()
```
其中,x、y1、y2分别为两个坐标轴上的数据。
阅读全文