Background

这里提供两种方法,一种是基于pandas,另一种是基于twinx。

1、先看最终效果图

  • pandas
  • twinx

2、源码

import pandas as pd
import random
import matplotlib.pyplot as plt
from matplotlib.pyplot import MultipleLocatordef draw1(lx, dy, title):"""画双轴折线图:param lx x轴数据集合:param dy y轴数据字典"""# 设置图片可以显示中文和特殊字符plt.rcParams['font.sans-serif'] = ['SimHei']plt.rcParams['axes.unicode_minus'] = Falsedf = pd.DataFrame(dy, index=lx)fyt = list(dy.keys())[0]syt = list(dy.keys())[1]ax = df.plot(secondary_y=[syt], x_compat=True, grid=True, linewidth=0.8)ax.set_title(title)ax.set_ylabel(fyt)ax.grid(linestyle="--", alpha=0.3)ax.right_ax.set_ylabel(syt)plt.show()def draw2(lx, dy, title):"""画双轴折线图:param lx x轴数据集合:param dy y轴数据字典"""# 设置图片可以显示中文和特殊字符plt.rcParams['font.sans-serif'] = ['SimHei']plt.rcParams['axes.unicode_minus'] = Falsefyt = list(dy.keys())[0]syt = list(dy.keys())[1]plt.figure(figsize=(8, 5), dpi=120)plt.plot(lx, dy.get(fyt), label=fyt, linewidth=0.8, color='b')plt.grid(linestyle="--", alpha=0.3)plt.title(title, fontsize=12)plt.xticks(rotation=30)plt.ylabel(fyt, fontsize=9)# plt.ylim(-10, 30)plt.legend(loc='upper left')# 调用twinx后可绘制次坐标轴plt.twinx()plt.plot(lx, dy.get(syt), label=syt, linewidth=0.8, color='y')plt.ylabel(syt, fontsize=9)# plt.ylim(-60, 50)plt.legend(loc='upper right')# 设置x轴刻度ax = plt.gca()ax.xaxis.set_major_locator(MultipleLocator(2))plt.show()def main():"""主函数"""lx = pd.period_range(start='2022-01', periods=12, freq="M")y1 = [round(random.random(), 3) for i in range(12)]y2 = [random.randint(1, 40) for i in range(12)]dy = {'应力(MPa)': y1, '温度(℃)': y2}title = '应力随温度变化情况'# draw1(lx, dy, title)lxx = [str(i) for i in list(lx)]draw2(lxx, dy, title)if __name__ == '__main__':main()

3、另附两条线分开显示的方法

  • 效果图

  • 方法就是设置y轴的刻度范围

python3+matplotlib绘制双轴折线图(两种方法)相关推荐

  1. Matplotlib 绘制 双轴 图

    Matplotlib 绘制 双轴 图 创作背景 分析思路 总结 结尾 创作背景 最近本菜鸡想要画一个 双轴图 ,可是直接使用 plt.plot() 实现不了这个功能,无奈,菜嘛,所以只能去 Matpl ...

  2. python 柱状图和折线图放在一起_Python matplotlib:matplotlib绘制——柱状图和折线图的组合...

    Python matplotlib:使用matplotlib绘制--柱状图和折线图的组合. 废话不多说,直接上效果图和代码. 代码如下: #柱状图 import numpy as np import ...

  3. python画双折线图-Python Pandas 时间序列双轴折线图

    时间序列pv-gmv双轴折线图 import numpy as np import pandas as pd import matplotlib.pyplot as plt n = 12 date_s ...

  4. 可视化实例(三)Tableau基础绘图介绍——横向条形图、双轴折线图、直方图

    Tableau是一款商业智能可视化软件,其基本绘图只用拖动相应字段即可,操作十分方便,今天就来分享其基本绘图步骤. 目录 一.Tableau常用功能区 二.横向条形图 三.双轴折线图 四.堆积柱形图 ...

  5. python matplotlib绘制多条折线图

    python matplotlib绘制多条折线图 代码 import matplotlib.pyplot as pltx = [6, 24, 48, 72] y1 = [87, 174, 225, 2 ...

  6. python时间序列折线图_Python Pandas 时间序列双轴折线图

    时间序列pv-gmv双轴折线图 import numpy as np import pandas as pd import matplotlib.pyplot as plt n = 12 date_s ...

  7. ChemDraw Pro绘制无环链结构的两种方法

    ChemDraw Pro 14是一款专门针对化学图形绘制而开发制作的编辑软件,是目前工科类常用的绘制化学结构工具,用于快速绘制常用的环结构组成.以下教程讲解ChemDraw Pro绘制无环链结构的两种 ...

  8. 绘制微型计算机系统组成结构图手绘,目前用电脑绘制卡通漫画大致有两种方法.doc...

    目前用电脑绘制卡通漫画大致有两种方法 目前用电脑绘制卡通漫画大致有两种方法. 一种方法是先用传统工具手绘,然后用扫描仪扫描到足够的精度之后再在图像处理软件中进行上色和处理. 另外一种方法就是直接在电脑 ...

  9. python生成折线图怎么对特定点做颜色_python使用matplotlib绘制简单的折线图和散点图...

    生成数据 数据可视化 数据可视化指的是通过可视化表示来探索数据,它与数据挖掘机密相关. 安装matplotlib 请访问https://pypi.python.org/pypi/matplotlib/ ...

最新文章

  1. 基于用户投票的排名算法Reddit
  2. 【剑指Offer】16重建二叉树
  3. Web应用安全--攻防对抗发展趋势
  4. 自动提醒IE6访客升级浏览器,
  5. Editplus 3.0 开发ext 教程
  6. java通过jdbc访问mysql,update数据返回值的思考
  7. java override报红_Eclipse @override报错解决
  8. ashx在web.config中如何配置_网络中,什么是半双工与全双工?它们如何配置
  9. 聊聊我怎么系统学习Linux技能并快速提高的
  10. UEditor 配置
  11. 如何让新建网站被搜索引擎快速收录
  12. 百度地图点聚合解决方案
  13. Android代码实现——拨打电话和发送短信APP
  14. 基建狂魔谷歌,如何把数据中心“武装到牙齿”
  15. python中的换行与不换行
  16. 出书最多 [2021年12月 电子学会C语言编程等级考试二级真题解析]
  17. 更新xcode至12.3,编译报错Building for iOS, but the linked and embedded framework ‘xxx.framework’ was buil...
  18. C++中使用ODBC连接SQL Server数据库
  19. win7mysql5.7.25安装教程_win7下MySql 5.7安装配置方法图文教程
  20. ICPC训练联盟2021寒假冬令营(7)_2021.01.26_笔记

热门文章

  1. MySQL添加新用户、创建数据库、为新用户分配权限
  2. Linux安装谷歌拼音输入法
  3. 《struts2拦截器的使用》
  4. svn重新定位提示版本库uuid不匹配
  5. 【C语言程序】输出杜甫的《绝句》(有无返回值两种方法)
  6. 中文字符,全角字符的正则表达式
  7. 学而时习之(2):单边sar adc测热电偶温度
  8. Newman快速算法(fast greedy)
  9. Android 动画 Animator 家族使用指南
  10. html写出日出,描写日出的优美语句