首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

Matplotlib -在条形图上覆盖折线图并对齐yticks

Matplotlib是一个Python的数据可视化库,可以用于创建各种类型的图表,包括条形图和折线图。在条形图上覆盖折线图并对齐yticks可以通过以下步骤实现:

  1. 导入Matplotlib库和相关模块:
代码语言:txt
复制
import matplotlib.pyplot as plt
import numpy as np
  1. 创建条形图和折线图的数据:
代码语言:txt
复制
x = np.array([1, 2, 3, 4, 5])  # x轴数据
y1 = np.array([10, 15, 7, 12, 9])  # 条形图的y轴数据
y2 = np.array([20, 18, 25, 22, 19])  # 折线图的y轴数据
  1. 创建条形图和折线图:
代码语言:txt
复制
fig, ax1 = plt.subplots()  # 创建一个图形和一个子图

# 绘制条形图
ax1.bar(x, y1, color='b', alpha=0.7)  # 设置条形图的颜色和透明度
ax1.set_ylabel('Bar Chart')  # 设置y轴标签

# 创建第二个y轴,并绘制折线图
ax2 = ax1.twinx()  # 创建第二个y轴
ax2.plot(x, y2, 'r--', marker='o')  # 绘制折线图
ax2.set_ylabel('Line Chart')  # 设置第二个y轴的标签

# 对齐yticks
ax1.set_yticks(np.arange(0, max(y1)+1, 5))  # 设置条形图的yticks
ax2.set_yticks(np.arange(0, max(y2)+1, 5))  # 设置折线图的yticks

# 设置x轴标签和标题
plt.xlabel('X')
plt.title('Bar Chart with Line')

# 显示图形
plt.show()

在上述代码中,我们首先导入了Matplotlib库和numpy模块。然后,创建了条形图和折线图的数据,其中x轴数据为1到5,y1和y2分别为条形图和折线图的y轴数据。

接下来,我们使用plt.subplots()创建了一个图形和一个子图。在子图上,使用ax1.bar()绘制了条形图,并使用ax1.set_ylabel()设置了条形图的y轴标签。然后,使用ax1.twinx()创建了第二个y轴,并使用ax2.plot()绘制了折线图,并设置了折线图的样式。使用ax2.set_ylabel()设置了第二个y轴的标签。

最后,使用ax1.set_yticks()ax2.set_yticks()分别对齐了条形图和折线图的yticks。通过np.arange()函数生成了合适的yticks范围。

最后,使用plt.xlabel()设置x轴标签,使用plt.title()设置图表标题,并使用plt.show()显示图形。

推荐的腾讯云相关产品:腾讯云服务器(CVM)和云数据库MySQL。

  • 腾讯云服务器(CVM):提供弹性计算能力,可根据业务需求灵活调整配置,支持多种操作系统和应用场景。产品介绍链接:腾讯云服务器(CVM)
  • 云数据库MySQL:提供高可用、可扩展的MySQL数据库服务,支持自动备份、容灾和监控等功能。产品介绍链接:云数据库MySQL
页面内容是否对你有帮助?
有帮助
没帮助

相关·内容

没有搜到相关的沙龙

领券