Python之Matplotlib绘制热力图和面积图


Posted in Python onApril 13, 2022

1.绘制面积图

面积图常用于描述某指标随时间的变化程度。其面积也通常可以有一定的含义。

绘制面积图使用的是plt.stackplot()方法。

以小学时期学的 常见的追击相遇问题中的速度时间图像为例,下边绘制出一幅简单的v-t图像。

全局字体设为默认的黑体,时间为从第0秒到第10秒,描述的是甲乙两个物体的速度。显然,面积则表示位移。

标题部分字体使用楷体(将系统中的TTF字体文件"STKAITI.TTF"复制到了当前目录下)。

import matplotlib.pyplot as plt
from matplotlib import font_manager

fig = plt.figure(1, facecolor='#ffffcc', figsize=(6, 6))
plt.rcParams['font.sans-serif'] = ['SimHei']
plt.rcParams['axes.unicode_minus'] = False
plt.rcParams['axes.facecolor'] = '#cc00ff'
x = [0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10]
v1 = [1, 1, 1, 2, 3, 4, 5, 5, 5, 5, 5]
v2 = [0.5, 0.5, 0.5, 1, 1.5, 2, 2.5, 3, 3, 2, 1]
plt.stackplot(x, v1, color=['#ff0000'])
plt.stackplot(x, v2, color=['#33ff66'])
plt.xlim(0, 10)
plt.title('v-t图像', fontsize=25, color='#0033cc', fontproperties=font_manager.FontProperties(fname="STKAITI.TTF"))
plt.xlabel('t/s')
plt.ylabel('v/(m/s)')
plt.legend(['甲', '乙'], bbox_to_anchor=(0.2, 0.95))
plt.show()

图像效果呈现如下:

Python之Matplotlib绘制热力图和面积图

2.绘制热力图

在数据分析中,热力图也是一种常用的方法,热力图通过色差、亮度来展示数据与数据之间的差异。

绘制热力图使用的是plt.imshow()方法,这个方法也即matplotlib中图像处理常用的方法。

下边做一个热力图的案例示例:

import matplotlib.pyplot as plt
from matplotlib import font_manager
import numpy as np
np.random.seed(30)
data = np.random.randint(70, 100, (30, 8))
plt.imshow(data)
plt.xticks(range(0, 8), ['A', 'B', 'C', 'D', 'E', 'F', 'G', 'H'])
plt.yticks(range(0, 30), np.array(range(1, 31), dtype='U3'))
# 显示颜色条
plt.colorbar()
plt.title('30个产品的ABCDEFGH指标热力图', fontsize=25, color='#0033cc', fontproperties=font_manager.FontProperties(fname="STKAITI.TTF"))
plt.show()

图像效果呈现如下:

Python之Matplotlib绘制热力图和面积图

到此这篇关于详解Python+Matplotlib绘制面积图&热力图的文章就介绍到这了!

Python 相关文章推荐
使用IPython下的Net-SNMP来管理类UNIX系统的教程
Apr 15 Python
Python实现基于权重的随机数2种方法
Apr 28 Python
Python实现的快速排序算法详解
Aug 01 Python
scrapy爬虫实例分享
Dec 28 Python
Python类中方法getitem和getattr详解
Aug 30 Python
利用python计算时间差(返回天数)
Sep 07 Python
原生python实现knn分类算法
Oct 24 Python
python 图片二值化处理(处理后为纯黑白的图片)
Nov 01 Python
python matplotlib 画dataframe的时间序列图实例
Nov 20 Python
tensorflow-gpu安装的常见问题及解决方案
Jan 20 Python
Python 调用 ES、Solr、Phoenix的示例代码
Nov 23 Python
python爬虫 requests-html的使用
Nov 30 Python
Python matplotlib绘制雷达图
Python万能模板案例之matplotlib绘制甘特图
Python万能模板案例之matplotlib绘制直方图的基本配置
python创建字典及相关管理操作
python微信智能AI机器人实现多种支付方式
Python中request的基本使用解决乱码问题
Apr 12 #Python
python模拟浏览器 使用selenium进入好友QQ空间并留言
You might like
社区(php&&mysql)一
2006/10/09 PHP
wordpress之wp-settings.php
2007/08/17 PHP
php下使用SMTP发邮件的代码
2008/01/10 PHP
codeigniter中测试通过的分页类示例
2014/04/17 PHP
PHP脚本监控Nginx 502错误并自动重启php-fpm
2015/05/13 PHP
PHP实现可自定义样式的分页类
2016/03/29 PHP
键盘控制事件应用教程大全
2006/11/24 Javascript
javascript奇异的arguments分析
2010/10/20 Javascript
来自国外的30个基于jquery的Web下拉菜单
2012/06/22 Javascript
JavaScript动态创建form表单并提交的实现方法
2015/12/10 Javascript
js插件Jcrop自定义截取图片功能
2016/10/14 Javascript
vue2.0实战之使用vue-cli搭建项目(2)
2017/03/27 Javascript
bootstrap suggest下拉框使用详解
2017/04/10 Javascript
微信小程序实现上传图片功能
2018/05/28 Javascript
微信小程序自定义底部弹出框
2020/11/16 Javascript
php中and 和 &&出坑指南
2018/07/13 Javascript
详解Vue项目中实现锚点定位
2019/04/24 Javascript
vue实现侧边栏导航效果
2019/10/21 Javascript
基于canvas实现手写签名(vue)
2020/05/21 Javascript
vscode+gulp轻松开发小程序的完整步骤
2020/10/18 Javascript
Vue如何实现变量表达式选择器
2021/02/18 Vue.js
Python实现监控程序执行时间并将其写入日志的方法
2015/06/30 Python
Python入门之三角函数全解【收藏】
2017/11/08 Python
python实现TF-IDF算法解析
2018/01/02 Python
Python使用Django实现博客系统完整版
2020/09/29 Python
pycharm下查看python的变量类型和变量内容的方法
2018/06/26 Python
python异步实现定时任务和周期任务的方法
2019/06/29 Python
Python实现银行账户资金交易管理系统
2020/01/03 Python
PyCharm vs VSCode,作为python开发者,你更倾向哪种IDE呢?
2020/08/17 Python
ghd澳大利亚官方网站:英国最受欢迎的美发工具品牌
2018/05/21 全球购物
2014新年元旦活动策划方案
2014/02/18 职场文书
我爱祖国演讲稿
2014/09/02 职场文书
教师自查自纠材料
2014/10/14 职场文书
财务工作检讨书
2014/10/29 职场文书
村官2015年度工作总结
2015/10/14 职场文书
画错魏国疆域啦!《派对咖孔明》动画因作画失误于官网致歉
2022/04/07 日漫