Python Matplotlib绘制等高线图与渐变色扇形图


Posted in Python onApril 14, 2022

渐变色扇形图

使用 python - matplotlib 颜色地图plt.cm模块儿,来绘制出颜色渐变、更加好看的扇形图。也称彩虹图,但是也不限于彩虹图,可以选择的颜色地图(colormap)有:

Paired, autumn, rainbow, gray, spring, Darks。

下边以颜色地图rainbow为例(彩虹图),写出以下代码,并展示各种颜色样式下的图像效果。

import pandas as pd
import numpy as np
import matplotlib.pyplot as plt
from matplotlib import cm


# 字体使用楷体
plt.rcParams['font.sans-serif'] = ['STKAITI']
plt.rcParams['axes.unicode_minus'] = False
# 准备数据
shapes = ['安徽省', '云南省', '福建省', '河南省', '辽宁省',
          '重庆', '湖南省', '四川省', '北京', '上海', '广西壮族自治区', '河北省',
          '浙江省', '江苏省', '湖北省', '山东省', '广东省']
values = [842, 866, 1187, 1405, 1495, 1620, 1717,
          2313, 2378, 3070, 4332, 5841, 6482, 7785, 9358, 9818, 20254]
s = pd.Series(values, index=shapes)
labels = s.index
sizes = s.values


fig, ax = plt.subplots(figsize=(8, 8), facecolor='#cc00ff')
# rainbow
# 这里的len(sizes)是选择的颜色的个数,也是绘制饼图的数据个数,
# 此处参数通常写为np.arange(len(sizes))/len(sizes)形式,不用纠结太多关于其用法。
colors = cm.rainbow(np.arange(len(sizes))/len(sizes))
patches, texts, autotexts = ax.pie(sizes, labels=labels, autopct='%1.0f%%',
                                   startangle=180,
                                   colors=colors,
                                   pctdistance=0.8,
                                   textprops={'fontsize': 15, 'color': '#8B1A1A'},
                                   )

ax.set_title('部分地区某指标占比图', loc='center', fontsize=25, color='blue')
plt.show()

图像效果如下:

Python Matplotlib绘制等高线图与渐变色扇形图

除此之外,也可以调用cm模块的get_cmap()方法来完成。可以对该方法有所了解(小啾觉得上边展示的方法是更为方便的)。

以Paired颜色地图 为例:

Python Matplotlib绘制等高线图与渐变色扇形图

以颜色地图autumn为例:

Python Matplotlib绘制等高线图与渐变色扇形图

以颜色地图gray为例:

Python Matplotlib绘制等高线图与渐变色扇形图

以颜色地图spring为例:

Python Matplotlib绘制等高线图与渐变色扇形图

等高线

绘制等高线图使用的是matplotlib.pyplot的contourf()方法。

该函数语法如下:

plt.contourf(X, Y, f(X,Y))

其中 X和Y都是二维数组。(meshgrid()方法作用后的 网格化 形式)

f(X,Y)指的是对X、和Y使用f()函数进行计算的结果,计算的结果作为该坐标点的高度。

一段可以参考的示例代码如下:

import numpy as np
import matplotlib.pyplot as plt


# 计算x,y坐标对应的高度值
def fun(x, y):
    return (1-x/2+x**2+y**3) * np.exp(-x**2-y**2)


# 设置个背景色
plt.figure(facecolor='#66ff33')
n = 256
x = np.linspace(-3, 3, n)
y = np.linspace(-3, 3, n)
# 把x,y数据转换为二维数据(网格化)
X, Y = np.meshgrid(x, y)
# 填充等高线
plt.contourf(X, Y, fun(X, Y))

# 显示图表
plt.show()

其中fun(x, y)是计算高度的公式,可以根据我们的需求自由定制。

绘制出的图像效果呈现如下:

Python Matplotlib绘制等高线图与渐变色扇形图

到此这篇关于基于Python+Matplotlib绘制渐变色扇形图与等高线图的文章就介绍到这了!

Python 相关文章推荐
Python开发如何在ubuntu 15.10 上配置vim
Jan 25 Python
Django与JS交互的示例代码
Aug 23 Python
解决python字典对值(值为列表)赋值出现重复的问题
Jan 20 Python
Python中format()格式输出全解
Apr 12 Python
Python弹出输入框并获取输入值的实例
Jun 18 Python
python pandas生成时间列表
Jun 29 Python
python 定时器每天就执行一次的实现代码
Aug 14 Python
Django获取应用下的所有models的例子
Aug 30 Python
使用tensorflow DataSet实现高效加载变长文本输入
Jan 20 Python
Python如何使用OS模块调用cmd
Feb 27 Python
教你使用Pandas直接核算Excel中快递费用
May 12 Python
利用Python判断你的密码难度等级
Jun 02 Python
python读取并查看npz/npy文件数据以及数据显示方法
Apr 14 #Python
在NumPy中深拷贝和浅拷贝相关操作的定义和背后的原理
Python捕获、播放和保存摄像头视频并提高视频清晰度和对比度
Apr 14 #Python
Python中time标准库的使用教程
Apr 13 #Python
Python函数对象与闭包函数
Apr 13 #Python
Python作用域和名称空间的详细介绍
Apr 13 #Python
Python获取字典中某个key的value
Apr 13 #Python
You might like
关于PHP session 存储方式的详细介绍
2013/06/25 PHP
PHP实现非阻塞模式的方法分析
2018/07/26 PHP
php实现二叉树中和为某一值的路径方法
2018/10/14 PHP
js验证表单大全
2006/11/25 Javascript
文本链接逐个出现的js脚本
2007/12/12 Javascript
javascript 一个函数对同一元素的多个事件响应
2009/07/25 Javascript
自定义jQuery选项卡插件实例
2013/03/27 Javascript
完美解决AJAX跨域问题
2013/11/01 Javascript
js data日期初始化的5种方法
2013/12/29 Javascript
js+jquery常用知识点汇总
2015/03/03 Javascript
基于Jquery实现万圣节快乐特效
2015/11/01 Javascript
JavaScript+html5 canvas制作色彩斑斓的正方形效果
2016/01/27 Javascript
用JS动态设置CSS样式常见方法小结(推荐)
2016/11/10 Javascript
echarts整合多个类似option的方法实例
2018/07/10 Javascript
微信小程序实现弹幕墙(祝福墙)
2020/11/18 Javascript
Python3里的super()和__class__使用介绍
2015/04/23 Python
通过Python来使用七牛云存储的方法详解
2015/08/07 Python
利用python将json数据转换为csv格式的方法
2018/03/22 Python
Python datetime 格式化 明天,昨天实例
2020/03/02 Python
python GUI库图形界面开发之PyQt5多线程中信号与槽的详细使用方法与实例
2020/03/08 Python
django 实现简单的插入视频
2020/04/07 Python
美国领先的户外服装与装备用品店:Moosejaw
2016/08/25 全球购物
iRobot官网:改变生活的家用机器人品牌
2016/09/20 全球购物
专营店会计助理岗位职责
2013/11/29 职场文书
2014村务公开实施方案
2014/02/25 职场文书
《那片绿绿的爬山虎》教学反思
2014/02/27 职场文书
公司委托书怎么写
2014/08/02 职场文书
弄虚作假心得体会
2014/09/10 职场文书
参观邀请函范文
2015/02/02 职场文书
鼋头渚导游词
2015/02/05 职场文书
2015年工程部工作总结
2015/04/30 职场文书
2015年秋季小学开学标语
2015/07/16 职场文书
运动会加油稿
2015/07/22 职场文书
小学一年级班主任工作经验交流材料
2015/11/02 职场文书
SQL Server内存机制浅探
2022/04/06 SQL Server
react中useState使用:如何实现在当前表格直接更改数据
2022/08/05 Javascript