Python中使用Matplotlib库绘制双Y轴图形(柱状图+折线图)

作者:热心市民鹿先生2024.01.17 10:44浏览量:16

简介:本文将介绍如何使用Python的Matplotlib库绘制具有双Y轴的图形,其中包含柱状图和折线图。我们将通过实例演示如何创建这样的图表,并解释其中的关键步骤。

千帆应用开发平台“智能体Pro”全新上线 限时免费体验

面向慢思考场景,支持低代码配置的方式创建“智能体Pro”应用

立即体验

在Python中,Matplotlib是一个广泛使用的绘图库,可以轻松创建各种类型的图表,包括双Y轴图形。这种图表在展示具有不同度量单位的两个系列时非常有用。以下是一个使用Matplotlib创建双Y轴图形(柱状图+折线图)的示例代码:
首先,确保已安装Matplotlib库。如果尚未安装,可以使用以下命令进行安装:

  1. pip install matplotlib

接下来,我们将使用Python编写代码来创建双Y轴图形。在此示例中,我们将创建一个简单的柱状图和折线图,并调整它们的Y轴以共用相同的刻度。

  1. import matplotlib.pyplot as plt
  2. import numpy as np
  3. # 创建数据
  4. x = np.arange(1, 6)
  5. y1 = np.array([10, 15, 7, 10, 5])
  6. y2 = np.array([2, 4, 6, 8, 10])
  7. # 创建图表
  8. fig, ax1 = plt.subplots()
  9. # 绘制柱状图
  10. bar = ax1.bar(x, y1, color='b', label='Bar')
  11. # 绘制折线图
  12. ax2 = ax1.twinx() # 创建第二个Y轴
  13. line = ax2.plot(x, y2, color='r', label='Line')
  14. # 设置图表标题和坐标轴标签
  15. ax1.set_xlabel('X Axis')
  16. ax1.set_ylabel('Y1 Axis', color='b')
  17. ax2.set_ylabel('Y2 Axis', color='r')
  18. # 设置图表标题和图例
  19. ax1.set_title('Dual Y-axis Chart (Bar + Line)')
  20. ax1.legend()
  21. ax2.legend()
  22. # 显示图表
  23. plt.show()

在上述代码中,我们首先导入了Matplotlib的pyplot模块和numpy模块。然后,我们创建了两个数组y1和y2来存储柱状图和折线图的数据。接下来,我们使用plt.subplots()函数创建了一个图表和一个Y轴对象ax1。然后,我们使用ax1.bar()函数绘制了柱状图,并使用ax1.twinx()函数创建了第二个Y轴ax2。接下来,我们使用ax2.plot()函数在第二个Y轴上绘制了折线图。然后,我们设置了X轴和两个Y轴的标签,以及图表标题和图例。最后,我们使用plt.show()函数显示了图表。
通过这个示例,你可以了解到如何使用Matplotlib库创建具有双Y轴的图形。你可以根据实际需求调整数据和样式,例如修改颜色、添加网格线等,来创建更加精美的图表。此外,还可以探索其他类型的Matplotlib绘图功能,以更好地满足你的可视化需求。

article bottom image

相关文章推荐

发表评论