在matplotlib中,可以使用legend
函数来创建图例,并使用ax.twinx()
函数来创建一个新的坐标轴。
以下是一个示例代码,演示如何创建不重叠的图例和坐标轴:
import matplotlib.pyplot as plt
# 创建第一个坐标轴
fig, ax1 = plt.subplots()
x = [1, 2, 3]
y1 = [4, 5, 6]
y2 = [7, 8, 9]
ax1.plot(x, y1, 'r-', label='Line 1')
ax1.set_xlabel('X')
ax1.set_ylabel('Y1')
ax1.tick_params('y')
ax1.legend(loc='upper left') # 创建第一个图例
# 创建第二个坐标轴
ax2 = ax1.twinx()
ax2.plot(x, y2, 'b-', label='Line 2')
ax2.set_ylabel('Y2')
ax2.tick_params('y')
ax2.legend(loc='upper right') # 创建第二个图例
plt.show()
在这个示例中,我们首先创建了一个坐标轴ax1
,并在其上绘制了一条红色曲线。然后,我们使用ax1.twinx()
函数创建了一个新的坐标轴ax2
,并在其上绘制了一条蓝色曲线。每个坐标轴都有自己的y轴标签和图例。调用legend
函数时,使用loc
参数指定图例的位置。
运行以上代码,将会显示一个具有不重叠图例和坐标轴的图形。