Python如何在同一张画布上画两个坐标系
时间: 2024-11-06 19:03:33 浏览: 8
在Python中,我们可以利用matplotlib库来创建并绘制多个坐标轴在同一幅图上。以下是一个简单的示例,展示如何在一个窗口内创建并显示两个相互独立的坐标轴:
```python
import matplotlib.pyplot as plt
# 创建一个新的 figure
fig = plt.figure()
# 创建第一个主坐标轴 (left, bottom, width, height)
ax1 = fig.add_axes([0.1, 0.5, 0.8, 0.4]) # x轴在左边,y轴在下边,占据大部分空间
ax1.set_title('First Coordinate System')
# 创建第二个副坐标轴 (right of the first, below it)
ax2 = fig.add_axes([0.9, 0.5, 0.02, 0.4], anchor='SR') # 'SR' 表示从右到左放置
ax2.yaxis.tick_right() # 右侧轴设置为 y 轴
ax2.yaxis.set_label_position("right") # 标签放在右侧
ax2.set_title('Second Coordinate System')
# 分别在两个坐标系上画线
x = [1, 2, 3]
y1 = [1, 4, 9]
ax1.plot(x, y1)
x2 = [0, 1, 2]
y2 = [1, 1/2, 1/3]
ax2.plot(x2, y2, color='r') # 使用红色线条
plt.show()
```
在这个例子中,`add_axes()` 函数用于添加新的坐标轴,参数列表决定了新轴的位置。你可以根据需要调整这些参数。然后,每个坐标轴可以独立地绘制图形。
阅读全文