Python数据分析-数据可视化(二)
欢迎大家访问个人博客:https://jmxgodlz.xyz
文章目录
- 前言
- Matplotlib 折线图格式调整
- 标签
- 线条颜色
- 线条形状
- 折点样式
- 线条透明度
前言
看到有些论文插图十分简洁美观,于是便摸索一下如何美化一下折线图绘图。本文将在前文Python数据分析-数据可视化的基础上,介绍折线图格式的调整。
本文使用的画图工具为matplotlib,相关API可访问python matplotlib文档。
Matplotlib 折线图格式调整
首先,贴一下文档中折线图绘制的附加参数表:
Property | Description |
---|---|
agg_filter | a filter function, which takes a (m, n, 3) float array and a dpi value, and returns a (m, n, 3) array |
alpha | scalar or None |
animated | bool |
antialiased or aa | bool |
clip_box | Bbox |
clip_on | bool |
clip_path | Patch or (Path, Transform) or None |
color or c | color |
dash_capstyle | CapStyle or {‘butt’, ‘projecting’, ‘round’} |
dash_joinstyle | JoinStyle or {‘miter’, ‘round’, ‘bevel’} |
dashes | sequence of floats (on/off ink in points) or (None, None) |
data | (2, N) array or two 1D arrays |
drawstyle or ds | {‘default’, ‘steps’, ‘steps-pre’, ‘steps-mid’, ‘steps-post’}, default: ‘default’ |
figure | Figure |
fillstyle | {‘full’, ‘left’, ‘right’, ‘bottom’, ‘top’, ‘none’} |
gid | str |
in_layout | bool |
label | object |
linestyle or ls | {’-’, ‘–’, ‘-.’, ‘:’, ‘’, (offset, on-off-seq), …} |
linewidth or lw | float |
marker | marker style string, Path or MarkerStyle |
markeredgecolor or mec | color |
markeredgewidth or mew | float |
markerfacecolor or mfc | color |
markerfacecoloralt or mfcalt | color |
markersize or ms | float |
markevery | None or int or (int, int) or slice or list[int] or float or (float, float) or list[bool] |
path_effects | AbstractPathEffect |
picker | float or callable[[Artist, Event], tuple[bool, dict]] |
pickradius | float |
rasterized | bool |
sketch_params | (scale: float, length: float, randomness: float) |
snap | bool or None |
solid_capstyle | CapStyle or {‘butt’, ‘projecting’, ‘round’} |
solid_joinstyle | JoinStyle or {‘miter’, ‘round’, ‘bevel’} |
transform | unknown |
url | str |
visible | bool |
xdata | 1D array |
ydata | 1D array |
zorder | float |
接下来,我将挑选几个常用的附加参数介绍使用方式与效果。
标签
- 附加参数名:label
- 功能:为绘制曲线命名,该名称会在图例显示
- 使用方式:plt.plot(x,y,label=‘example’)
import randomimport matplotlib.pyplot as pltx = range(10)
y = [random.random() for _ in range(10)]plt.figure()
plt.plot(x, y, label='example')
plt.legend()
plt.show()
线条颜色
- 附加参数名:color
- 功能:选择绘制线条的颜色
- 使用方式:plt.plot(x,y,color=‘r’)
- 颜色选取方式分为三种:
- 用全名或简称 ,如blue或b
- 16进制 ,如FF00FF
- (r, g, b) 或 (r, g, b, a),如(1,0,1,1) ,其中 r g b a 取均为[0, 1]之间,[0, 1]之间的浮点数的字符串形式,表示灰度值。0表示黑色,1表示白色
import randomimport matplotlib.pyplot as pltx = range(10)
y = [random.random() for _ in range(10)]
y2 = [random.random() for _ in range(10)]
y3 = [random.random() for _ in range(10)]
y4 = [random.random() for _ in range(10)]plt.figure()
plt.plot(x, y, label='example1', color='blue')
plt.plot(x, y2, label='example2', color='r')
plt.plot(x, y3, label='example3', color='#00FFFF')
plt.plot(x, y4, label='example4', color=(0.4, 0.5, 0.6))
plt.legend()
plt.show()
线条形状
- 附加参数名:linestyle(或ls)
- 功能:选择绘制线条的形状
- 使用方式:plt.plot(x,y,linestyle=’:’)或者plt.plot(x,y,ls=’:’)
- 常用形状:
- - 实线(solid)
- – 短线(dashed)
- -. 短点相间线(dashdot)
- : 虚点线(dotted)
- ‘’, ’ ', None
import randomimport matplotlib.pyplot as pltx = range(10)
y = [random.random() for _ in range(10)]
y2 = [random.random() for _ in range(10)]
y3 = [random.random() for _ in range(10)]
y4 = [random.random() for _ in range(10)]plt.figure()
plt.plot(x, y, label='example1', color='blue', linestyle='-')
plt.plot(x, y2, label='example2', color='r', ls='--')
plt.plot(x, y3, label='example3', color='#00FFFF', ls=':')
plt.plot(x, y4, label='example4', color=(0.4, 0.5, 0.6), ls='')
plt.legend()
plt.show()
折点样式
- 附加参数名:
(1)marker – 折点形状
(2)markeredgecolor 或 mec – 折点外边颜色
(3)markeredgewidth 或 mew – 折点线宽
(4)markerfacecolor 或 mfc --折点实心颜色
(5)markerfacecoloralt 或 mfcalt
(6)markersize 或 ms --折点大小
折点形状选择如下表:
character | description |
---|---|
'-'
|
solid line style |
'--'
|
dashed line style |
'-.'
|
dash-dot line style |
':'
|
dotted line style |
'.'
|
point marker |
','
|
pixel marker |
'o'
|
circle marker |
'v'
|
triangle_down marker |
'^'
|
triangle_up marker |
'<'
|
triangle_left marker |
'>'
|
triangle_right marker |
'1'
|
tri_down marker |
'2'
|
tri_up marker |
'3'
|
tri_left marker |
'4'
|
tri_right marker |
's'
|
square marker |
'p'
|
pentagon marker |
'*'
|
star marker |
'h'
|
hexagon1 marker |
'H'
|
hexagon2 marker |
'+'
|
plus marker |
'x'
|
x marker |
'D'
|
diamond marker |
'd'
|
thin_diamond marker |
``’ | '`` |
'_'
|
hline marker |
import randomimport matplotlib.pyplot as pltx = range(10)
y = [random.random() for _ in range(10)]
y2 = [random.random() for _ in range(10)]
y3 = [random.random() for _ in range(10)]
y4 = [random.random() for _ in range(10)]plt.figure()
plt.plot(x, y, label='example1', color='blue', linestyle='-', marker='o')
plt.plot(x, y2, label='example2', color='r', ls='--', marker='1')
plt.plot(x, y3, label='example3', color='#00FFFF', ls=':', marker='2')
plt.plot(x, y4, label='example4', color=(0.4, 0.5, 0.6), marker='3')
plt.legend()
plt.show()
线条透明度
- 附加参数名:alpha,值在[0,1]之间
- 功能:选择绘制线条的透明度
- 使用方式:plt.plot(x,y,alpha=‘0.9’)
import randomimport matplotlib.pyplot as pltx = range(10)
y = [random.random() for _ in range(10)]
y2 = [random.random() for _ in range(10)]
y3 = [random.random() for _ in range(10)]
y4 = [random.random() for _ in range(10)]plt.figure()
plt.plot(x, y, label='example1', color='blue', linestyle='-', alpha=0.3)
plt.plot(x, y2, label='example2', color='r', ls='--', alpha=0.1)
plt.plot(x, y3, label='example3', color='#00FFFF', ls=':', alpha=0.5)
plt.plot(x, y4, label='example4', color=(0.4, 0.5, 0.6), ls='')
plt.legend()
plt.show()
Python数据分析-数据可视化(二)相关推荐
- Python数据分析-数据可视化
文章目录 一. Matplotlib 基本概念 二. Matplotlib三层结构 三. Matplotlib 基本使用 1. 折线图 2. 绘制多条折线图 3. 绘制多个坐标系 -- plt.sub ...
- Python爬虫+数据分析+数据可视化(分析《雪中悍刀行》弹幕)
Python爬虫+数据分析+数据可视化(分析<雪中悍刀行>弹幕) 哔哔一下 爬虫部分 代码部分 效果展示 数据可视化 代码展示 效果展示 视频讲解 福利环节 哔哔一下 雪中悍刀行兄弟们都看 ...
- python代码示例图形-纯干货:手把手教你用Python做数据可视化(附代码)
原标题:纯干货:手把手教你用Python做数据可视化(附代码) 导读:制作提供信息的可视化(有时称为绘图)是数据分析中的最重要任务之一.可视化可能是探索过程的一部分,例如,帮助识别异常值或所需的数据转 ...
- python 图表美化_你的图表不美观怎么办,Python实现数据可视化帮你实现
之前突然看到一个用Python实现数据可视化的技术,小编觉得解决了生活中的好多问题,大家一起来看看这个神器.1.主页 首先,这个主页的设计就是我非常喜欢的风格,简单清晰,第一眼就让人有特别清爽的感觉, ...
- python画图代码大全-纯干货:手把手教你用Python做数据可视化(附代码)
原标题:纯干货:手把手教你用Python做数据可视化(附代码) 导读:制作提供信息的可视化(有时称为绘图)是数据分析中的最重要任务之一.可视化可能是探索过程的一部分,例如,帮助识别异常值或所需的数据转 ...
- 【教程】Python科研数据可视化、MATLAB科研数据可视化
在过去的20年中,随着社会产生数据的大量增加,对数据的理解.解释与决策的需求也随之增加.而固定不变是人类本身,所以我们的大脑必须学会理解这些日益增加的数据信息.所谓"一图胜千言", ...
- python数据分析可视化实例-Python数据分析与可视化从入门到精通
(1)没有高深理论,每章都以实例为主,读者参考书中源码运行,就能得到与书中一样的结果.(2)专注于Python数据分析与可视化操作中实际用到的技术.相比大而全的书籍资料,本书能让读者尽快上手,开始项目 ...
- python可视化数据分析-Python数据分析与可视化从入门到精通
(1)没有高深理论,每章都以实例为主,读者参考书中源码运行,就能得到与书中一样的结果.(2)专注于Python数据分析与可视化操作中实际用到的技术.相比大而全的书籍资料,本书能让读者尽快上手,开始项目 ...
- python实现数据可视化_使用Matplotib python实现数据可视化
python实现数据可视化 I Feel: 我觉得: In today's digital world data has become as important as air. Machines &a ...
最新文章
- 前端开发我为什么选择cordova
- OpenGL环境多维数据集映射
- 10个必需的iOS开发工具和资源
- 一把“万能钥匙”就能开所有共享单车,撬走3亿元,开发者已被抓捕...
- 循环语句在c语言中的作用是什么,C语言中循环语句的使用
- 千万别说你会Python!如果不知道这10个Python包!
- ln火线零线_插座怎么接LN线
- [每日一氵] python创建简单 command-line interface (CLI) API
- win10怎么更新显卡驱动_荒野大镖客2优化:NVIDIA更新GeForce 441.41显卡驱动
- 【Word】解决mathtype已插入公式按新章节开始编号的问题
- Threejs加载城市obj模型,加载人物gltf模型,Tweenjs实现人物根据规划的路线运动
- VLC控件——属性和方法 .
- Jsp制作企业后台数据库管理系统
- 厦大C语言上机 1367 几何级数的计算机验证法
- MySQL的数据类型(一)
- Lumerical官方案例、FDTD时域有限差分法仿真学习(十四)——超透镜(Metalens)
- 萝卜魂军曹机器人_《萝卜魂》参战作品详介第一弹:《交响诗篇》
- Audio播放音频 --- 建立播放通道
- 脑洞大开:为啥帧率达到 60 fps 就流畅?
- 特殊符号 与 unicode 转换