Python 数据分析——Matplotlib相关知识
Python 数据分析——Matplotlib相关知识
第五章 Matplotlib相关知识 —— 样式
文章目录
- Python 数据分析——Matplotlib相关知识
- 前言
- 一、matplotlib的绘图样式(style)
- 1.matplotlib预先定义样式
- 2.用户自定义stylesheet
- 3.设置rcparams
- 二、matplotlib的色彩设置(color)
- 1.RGB或RGBA
- 2.HEX RGB 或 RGBA
- 3.灰度色阶
- 4.单字符基本颜色
- 5.颜色名称
- 6.使用colormap设置一组颜色
- 参考
前言
介绍matplotlib中样式和颜色的使用,绘图样式和颜色是丰富可视化图表的重要手段,可以让可视化图表变得更美观,突出重点和凸显艺术性。
关于绘图样式,常见的有3种方法,分别是修改预定义样式,自定义样式和
rcparams
。
关于颜色使用,本章介绍了常见的5种表示单色颜色的基本方法,以及colormap
多色显示的方法。
一、matplotlib的绘图样式(style)
1.matplotlib预先定义样式
matplotlib内置了总共以下26种丰富的样式可供使用者选择。
查询print(plt.style.available)
['bmh', 'classic', 'dark_background',
'fast', 'fivethirtyeight', 'ggplot',
'grayscale', 'seaborn-bright', 'seaborn-colorblind',
'seaborn-dark-palette', 'seaborn-dark', 'seaborn-darkgrid',
'seaborn-deep', 'seaborn-muted', 'seaborn-notebook',
'seaborn-paper', 'seaborn-pastel', 'seaborn-poster',
'seaborn-talk', 'seaborn-ticks', 'seaborn-white',
'seaborn-whitegrid', 'seaborn', 'Solarize_Light2','tableau-colorblind10', '_classic_test']
几个例子
模板:
plt.style.use('样式')
- 初始化数据
x1 = np.linspace(0.0, 6.0, 100)
y1 = np.cos(2 * np.pi * x1) * np.exp(-x1)
- bmh样式
plt.style.use('bmh')
plt.plot(x1,y1);
- fivethirtyeight 样式
plt.style.use('fivethirtyeight')
plt.plot(x1,y1);
- classic 样式
plt.style.use('classic')
plt.plot(x1,y1);
2.用户自定义stylesheet
在任意路径下创建一个后缀名为mplstyle的样式清单,编辑文件添加以下样式内容
axes.titlesize : 24
axes.labelsize : 20
lines.linewidth : 3
lines.markersize : 10
xtick.labelsize : 16
ytick.labelsize : 16
引用自定义
plt.style.use('file/diy.mplstyle')
# 混合样式
plt.style.use(['样式','file/diy.mplstyle'])
- 例子
plt.style.use(['classic','E:/MyPython/diy.mplstyle'])
plt.plot(x1,y1);
3.设置rcparams
还可以通过修改默认rc
设置的方式改变样式,所有rc
设置都保存在一个叫做 matplotlib.rcParams
的变量中。
修改过后再绘图,可以看到绘图样式发生了变化。
mpl.rcParams['lines.linewidth'] = 2
mpl.rcParams['lines.linestyle'] = '--'
mpl.rc('lines', linewidth=4, linestyle='-.')
- 临时
如果只想为特定代码块使用样式但不想更改全局样式,样式包提供了一个上下文管理器,用于将更改限制在特定范围内。
with plt.style.context('bmh'):plt.plot(x1,y1, 'b-o') # "b"为颜色样式 "o"为点的样式
plt.show()
二、matplotlib的色彩设置(color)
从可视化编码的角度对颜色进行分析,可以将颜色分为色相、亮度和饱和度三个视觉通道。通常来说:
色相:
没有明显的顺序性、一般不用来表达数据量的高低,而是用来表达数据列的类别。
亮度和饱和度:
在视觉上很容易区分出优先级的高低、被用作表达顺序或者表达数据量视觉通道。
- matplotlib自带颜色对照表
from matplotlib import colors
colors.CSS4_COLORS
1.RGB或RGBA
RGB 颜色对照表(0-1之间取值)
# 颜色用[0,1]之间的浮点数表示,四个分量按顺序分别为(red, green, blue, alpha),其中alpha透明度可省略
plt.plot([1,2,3],[4,5,6],color=(1, 1, 0))
plt.plot([4,5,6],[1,2,3],color=(0.1, 0.2, 0.5, 0.5));
2.HEX RGB 或 RGBA
RGB颜色和HEX颜色之间是可以一一对应的,以下网址提供了两种色彩表示方法的转换工具。
网址:https://www.colorhexa.com/
# 用十六进制颜色码表示,同样最后两位表示透明度,可省略
plt.plot([1,2,3],[4,5,6],color='#B22222')
plt.plot([4,5,6],[1,2,3],color='#B2222260')
3.灰度色阶
# 当只有一个位于[0,1]的值时,表示灰度色阶
plt.plot([1,2,3],[4,5,6],color='0.5')
4.单字符基本颜色
# matplotlib有八个基本颜色,可以用单字符串来表示
#分别是'b', 'g', 'r', 'c', 'm', 'y', 'k', 'w'
#对应的是blue, green, red, cyan, magenta, yellow, black, and white的英文缩写plt.plot([1,2,3],[4,5,6],color='b')
5.颜色名称
# matplotlib提供了颜色对照表,可供查询颜色对应的名称
plt.plot([1,2,3],[4,5,6],color='PaleTurquoise')
- 颜色名称对照表
6.使用colormap设置一组颜色
在matplotlib中,colormap共有五种类型:
顺序(Sequential)
通常使用单一色调,逐渐改变亮度和颜色渐渐增加,用于表示有顺序的信息
发散(Diverging)
改变两种不同颜色的亮度和饱和度,这些颜色在中间以不饱和的颜色相遇;当绘制的信息具有关键中间值(例如地形)或数据偏离零时,应使用此值。
循环(Cyclic)
改变两种不同颜色的亮度,在中间和开始/结束时以不饱和的颜色相遇。用于在端点处环绕的值,例如相角,风向或一天中的时间。
定性(Qualitative)
常是杂色,用来表示没有排序或关系的信息。
杂色(Miscellaneous)
一些在特定场景使用的杂色组合,如彩虹,海洋,地形等。
在以下官网页面可以查询上述五种colormap的字符串表示和颜色图的对应关系
https://matplotlib.org/stable/tutorials/colors/colormaps.html
x = np.random.randn(50)
y = np.random.randn(50)
plt.scatter(x,y,c=x,cmap='summer');
参考
1.Datawhale
python 人脸识别相关知识和库的使用 写在前面 一.用到的基本库 二.常用的库简单使用 1.skimag.io 2.sys.argv 三.补充知识点 1.相对路径与绝对路径: 2.numpy.me ... Python数据分析--Matplotlib数据可视化基础(二) 思维导图: 图形的绘制 认识要绘制的图形 基本绘图流程 pyplot基础图表函数 pyplot饼图的绘制 pie函数 matplotl ... [小白从小学Python.C.Java] [Python全国计算机等级考试] [Python数据分析考试必会题] ● 标题与摘要 Python数据分析 相关系数矩阵 ● 选择题 以下关于相关系数矩阵说 ... 经过这周的Python课堂,第二章的知识点可以说是被彻头彻尾地讲了一下,所以我在此将上一篇发布的博客内容也加以完善. 2.1.3 列表元素的删除 在学习了列表元素的增加以后,删除列表元素的方法也可以进 ... Matplotlib介绍 Matplotlib是一个强大的Python绘图和数据可视化的工具包. Matplotlib的主要功能 Matplotlib是python中的一个包,主要用于绘制2D图形(当 ... 数据分析是用适当的方法对收集来的大量数据进行分析,帮助人们作出判断,以便采取适当行动.数据分析也是机器学习课程的基础. matplotlib:最流行的Python底层绘图库,主要做数据可视化图表, ... 数据分析: 数据分析 基础概念和环境 matplotlib numpy pandas 第一部分综述 1.为什么学习数据分析 2.什么是数据分析 数据分析是用适当的方法对收集来的大量数据进行分析,帮助人 ... 文章目录 matplotlib概述 matplotlib基本功能 matplotlib基本功能详解 基本绘图 绘图核心API 线型.线宽和颜色 设置坐标轴范围 设置坐标刻度 设置坐标轴 图例 特殊点 ... 本篇内容会在后期不定时更新 什么是matplotlib matplotlib是最流行的python底层绘图库,主要做数据可视化图表. 为什么要学习matplotlib 能将数据进行可视化,更直观的呈现 ...Python 数据分析——Matplotlib相关知识相关推荐
最新文章
热门文章