matplotlib制作折线图+直方图,结合为一张图

import numpy as np
import matplotlib.pyplot as plt

plt.figure(figsize=(30, 24))

x = [ ]
y = [ ]
z = [ ]
light_purple = (161/255, 125/255, 180/255) 
light_blue = (142/255, 165/255, 200/255) 

# 绘制折线图
plt.subplot(221)
plt.plot(x, y, '-', color=light_blue)
plt.plot(x, z, '-', color=light_purple)
plt.scatter(x, y, color=light_blue, label='y data points', zorder=5)
plt.scatter(x, z, color=light_purple, label='z data points', zorder=5)
plt.ylim(0, 25)
plt.xticks(fontsize=20)
plt.yticks(fontsize=20)
plt.xlabel(' ', fontsize=25)
plt.ylabel(' ', fontsize=25)
plt.gca().spines['right'].set_visible(True)
plt.gca().spines['top'].set_visible(False)
plt.grid(axis='y', color='gray', linestyle='--', linewidth=0.5, alpha=0.5)
plt.legend(labels=[' ', ' '],  bbox_to_anchor=(0.50, -0.08), fontsize=20)

# 创建第二个y轴,用于绘制直方图
plt.twinx()
y_1 = [ ]
z_1 = [ ]
x_2 = [ ]
plt.gca().spines['top'].set_visible(False)
plt.bar(x, y_1, color=light_purple, alpha=0.5, width=0.4)
plt.bar(x_2, z_1, color=light_blue, alpha=0.5, width=0.4)
plt.yticks(fontsize=20)
plt.ylabel(' ', fontsize=20)
plt.legend(labels=[' ', ' '], loc='lower left', bbox_to_anchor=(0.56, -0.21), fontsize=20)
# 移动标签到图表之外,并设置字体大小

plt.text(0.13, 0.45, " ", fontsize=25, transform=plt.gcf().transFigure)
# 移动图例到图表之外
#plt.legend(labels=[' '], loc='lower left', bbox_to_anchor=(0.56, -0.21), fontsize=20)
plt.xticks(x)
plt.savefig('C:/Users/ .png', bbox_inches='tight')
plt.show()

参数根据自己填,在jupyternotebook运行过,填入数据就能用,标题之类的参数位置我都调好了,还提供了两种颜色参数

  • 12
    点赞
  • 8
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值