Python-matplotlib制图01——双y轴图绘制

愿你历经千辛万苦,归来仍是少年!


前言

  1. 概述

  基于Python的matplotlib库绘制双y轴图

  2. 版本

   2.1 山东青岛,2021年4月5日,Version 1

  3. 参考资料

[1] matplotlib双y轴绘制及合并图例


一、ax.twinx()方法绘制双y轴图

代码示例:

"""
1. 程序目的
   (1) 学习基于matplotlib绘制双y轴图
   
2. 版本
   2.1 山东青岛  2021年4月23日 Version 1
   
3. 数据

4. 参考资料
   [1] matplotlib双y轴绘制及合并图例(https://www.cnblogs.com/Atanisi/p/8530693.html) 

"""

# 1. 相关包的导入
  
import numpy as np
import pandas as pd

import matplotlib.pyplot as plt
plt.rcParams['font.sans-serif'] = ['SimHei']  #显示中文
plt.rcParams['axes.unicode_minus'] = False #用来正常显示负号

from matplotlib.pyplot import MultipleLocator

# 2. 创建绘图数据
month = np.arange(1,13)
precipitation = [10,15,30,40,50,80,100,120,55,45,30,10]
temperature = [-15,-10,5,15,20,27,35,30,26,15,5,-10]

# 3. 双y轴图绘制
fig = plt.figure(figsize=(5,3),dpi=600) # 创建绘图窗口
  # 3.1 降水
ax_pre = fig.add_subplot(111)
pre_bar = ax_pre.bar(month,precipitation,
                     color='blue',
                     label='降水')
fontdict1 = {'size':11,'color':'k','weight':'normal','family':'SimHei'}
ax_pre.set_ylabel('降水(mm)',fontdict=fontdict1,labelpad=0)
ax_pre.set_xlabel('月')

  # 3.2 温度
ax_tem = ax_pre.twinx() # 共用x轴
tem_line = ax_tem.plot(month,temperature,marker='o',
                       markersize=3,color='r',linewidth=1,
                      label='温度')
ax_tem.set_ylabel('温度(℃)',fontdict=fontdict1,labelpad=0)

  # 添加图例
fig.legend(loc=0,bbox_to_anchor=(1,1), bbox_transform=ax_pre.transAxes)

# 4. 制图结果保存
plt.savefig('PreTas.jpg',width=5,height=3,dpi=600,bbox_inches='tight')
       

制图结果如下:
双y轴图绘制


评论 4
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

EWBA_GIS_RS_ER

如有帮助,赏杯茶吧。

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值