📜  左右两个图例 x asix matplotlib - Python (1)

📅  最后修改于: 2023-12-03 15:09:41.485000             🧑  作者: Mango

左右两个图例 x asix matplotlib - Python

在数据可视化中,经常会有需要在同一画布上展示两张相关性不强的图表的需求,这时候可以使用左右两个图例的方式进行绘制。在 Python 中,可以使用 matplotlib 库来实现这个功能。

导入 matplotlib 库

如下所示,我们可以使用以下命令来导入需要的库:

import matplotlib.pyplot as plt
准备数据

在进行数据可视化之前,需要先定义数据。这里我们准备了两个示例数据,分别用来表示两个不同的数据序列。

x1 = [1,2,3,4,5]
y1 = [10,20,30,40,50]

x2 = [1,2,3,4,5]
y2 = [5,10,15,20,25]
在同一个画布上绘制两个图例

下面的代码展示了如何在同一个画布上绘制两个图例:

# 创建画布
fig, ax = plt.subplots()

# 绘制第一个图例
ax.plot(x1, y1, label='Line 1')

# 绘制第二个图例
ax.plot(x2, y2, label='Line 2')

# 显示图例
ax.legend()

# 显示图表
plt.show()
左右两个图例 x axis 绘制

有时候我们需要在同一个画布上绘制两个相互关联但是又有不同单位的图表。这时候,使用左右两个图例 x axis 绘制就可以轻松实现需求。下面的代码演示了如何使用左右两个图例 x axis 绘制:

# 绘制左图例
fig, ax1 = plt.subplots()

color = 'tab:red'
ax1.set_xlabel('X data')
ax1.set_ylabel('Y1 data', color=color)
ax1.plot(x1, y1, color=color)
ax1.tick_params(axis='y', labelcolor=color)

# 绘制右图例
ax2 = ax1.twinx()  

color = 'tab:blue'
ax2.set_ylabel('Y2 data', color=color) 
ax2.plot(x2, y2, color=color)
ax2.tick_params(axis='y', labelcolor=color)

# 显示图例
fig.tight_layout()  
plt.show()
总结

在 Python 中,使用 matplotlib 库可以轻松实现在同一个画布上绘制两个不同的图例。使用左右两个图例 x axis 绘制可以更好地展示不同的数据序列之间的相关性。