python数据分析————matplotlib数据可视化
内容导读
互联网集市收集整理的这篇技术教程文章主要介绍了python数据分析————matplotlib数据可视化,小编现在分享给大家,供广大互联网技能从业者学习和参考。文章包含4015字,纯文字阅读大概需要6分钟。
内容图文
![python数据分析————matplotlib数据可视化](/upload/InfoBanner/zyjiaocheng/605/ef15ff9fc901467b9da30deb68828b47.jpg)
数据可视化
-
数据可视化:将数据以图表的形式表示,数据视觉表现形式的科学技术研究
-
数据可视化的作用:数据分析的最终目标、数据探索的重要手段
常见图表类型
- 折线图:以折线方式反应数据变化趋势
- 直方图:利用方块大小反应数据差异
- 条形图:显示各个项目之间的比较情况,和直方图有类似的作用
- 饼图:显示各数据的百分比情况
- 散点图:显示若干数据系列中各数值之间的关系
- 箱型图:用来显示一组数据分散情况的统计图,在识别异常值方面有一定的优越性
matplotlib
m a t p l o t l i b , 风 格 类 似 M a t l a b 的 基 于 P y t h o n 的 图 表 绘 图 系 统 。 \color{red}{matplotlib,风格类似 Matlab 的基于 Python 的图表绘图系统。} matplotlib,风格类似Matlab的基于Python的图表绘图系统。是 P y t h o n \color{black}{Python} Python最著名的绘图库,它提供了一整套和 matlab 相似的命令 API,十分适合交互式地进行制图。
- 导入库
import matplotlib.pyplot as plt
简单绘图
-
matplotlib中,pyplot默认产生一个Figure对象,可以理解为一张空白的画布,用于容纳图表的各种组件
- plot函数:一个简单的绘图函数
plt.plot(np.arange(10))
2. figure函数:创建新的空白画布,或使用当前的活动画布
plt.figure(facecolor='green',figsize=(3,4))
ax = plt.plot(np.arange(50))
plt.show()
figure函数参数 | 描述 |
---|---|
num | Figure对象的编号或名称 |
figsize | 画布的尺寸,inch,默认(6.4, 4.8) |
dpi | 分辨率,像素/inch,默认100 |
facecolor | 画布背景颜色 |
edgecolor | 图形边框颜色 |
- subplot函数:Figure对象允许划分为多个绘图区域,每个区域
都有自己的坐标系,成为子图,subplot函数可以创建单个子图。
plt.subplot(nrows, ncols, index, **kwargs)
# 当nrows, ncols, index都小于10时可以简写
ls = range(10)
# 分成2*1的矩阵区域,占用编号为1的区域,即第1行的子图
plt.subplot(211)
plt.plot(ls)
# 分成2*2的矩阵区域,占用编号为3的区域,即第2行第1列的子图
plt.subplot(223)
plt.plot(ls)
# 分成2*2的矩阵区域,占用编号为4的区域,即第2行第2列的子图
plt.subplot(224)
plt.plot(ls)
plt.show()
4. 根据索引创建子图
num = np.arange(100)
# 分成2*2的矩阵区域,返回子图数组axes
fig, axes = plt.subplots(2, 2)
ax1 = axes[0, 0] # 根据索引[0,0]从Axes对象数组中获取第1个子图
ax2 = axes[0, 1] # 根据索引[0,1]从Axes对象数组中获取第2个子图
ax3 = axes[1, 0] # 根据索引[1,0]从Axes对象数组中获取第3个子图
ax4 = axes[1, 1] # 根据索引[1,1]从Axes对象数组中获取第4个子图
# 在选中的子图上作图
ax1.plot(num, num)
ax2.plot(num, -num)
ax3.plot(num, num**2)
ax4.plot(num, np.log(num))
plt.show()
标签和图例
-
光有图还不够,我们还应该在图的基础上添加相应的标题、标签和注释等,这样才能够使图表更加立体,数据更加丰富、饱满。
函数 | 描述 |
---|---|
title | 设置当前图片的标题 |
xlabel,ylabel | 设置x轴、y轴的名称 |
xticks,yticks | 设置x轴、y轴的刻度与标签 |
xlim,ylim | 设置x轴、y轴的范围 |
legend | 设置图例 |
legend函数只能plot函数之后设置,其他的可前可后
data = np.arange(10)
plt.title("Title")
plt.xlabel("X")
plt.ylabel("Y")
plt.xticks([0,2,4,5,8,10])
plt.yticks([0,100,300,600])
plt.plot(data,data**2)
plt.plot(data,data**3)
plt.legend(["y=x^2","y=x^3"])
plt.show()
-
plot函数为我们提供了很多的绘图风格
颜色字符 | 描述 |
---|---|
y,g,b,r… | 英文开头首字母小写 |
‘#008000’ | RGB某颜色 |
风格字符 | 描述 |
---|---|
‘-’ | 实线 |
‘- -’ | 破折线 |
‘-.’ | 点划线 |
‘:’ | 虚线 |
(’ ‘’ ') | 无线条 |
标记字符 | 描述 | 标记字符 | 描述 | 标记字符 | 描述 |
---|---|---|---|---|---|
‘.’ | 点标记 | ‘,’ | 像素标记(极小点) | ‘o’ | 实心圈标记 |
‘v’ | 倒三角标记 | ‘s’ | 实心方形 | ‘p’ | 实心五角 |
‘*’ | 星型 | ‘^ > <’ | 上,右,左三角标记 | ‘1 2 3 4’ | 下,上,左,右花三角标记 |
‘h H’ | 横,竖六边形 | ‘+’ | 十字 | ‘x’ | x标记 |
‘D’ | 菱形 | ‘d’ | 瘦菱形 | ‘|’ | 垂直线 |
a=np.arange(10)
plt.plot(a,a*1.5,'go-',a,a*2.5,'rx--',a,a*3.5,'bv-.',a,a*4.5,'y:')
plt.show()
中文显示
-
pyplot并不默认支持中文显示,需要rcParams修改字体实现
rcParams | 描述 |
---|---|
‘font.family’ | 显示字体的名字 |
‘SimHei’ | 中文黑体 |
‘LiSu’ | 中文隶书 |
‘Kaiti’ | 中文楷体 |
‘FangSong’ | 中文仿宋 |
‘YouYuan’ | 中文幼圆 |
‘STSong’ | 华文宋体 |
— | — |
‘font.style’ | 字体风格 |
‘normal’ | 正常 |
‘italic’ | 斜体 |
– | – |
‘font.size’ | 字体大小 |
整数字号或者’large’,‘x-small’ |
- 第一种方法,使用使用rcParams修改字体为中文字体
matplotlib.rcParams['font.family']='SimHei'
plt.plot([3,1,4,5,2])
plt.ylabel("纵轴(值)")
plt.show()
2. 第二种方法,在有中文输出的地方,增加属性fontproperties
a = np.arange(0.0,5.0,0.02)
plt.xlabel('横轴:时间',fontproperties='SimHei',fontsize=20)
plt.ylabel('纵轴:振幅',fontproperties='Kaiti',fontsize=10)
plt.plot(a,np.cos(2*np.pi*a),'r--')
plt.show()
保存图片
# 在show函数之前设置
plt.savefig('test.png')
内容总结
以上是互联网集市为您收集整理的python数据分析————matplotlib数据可视化全部内容,希望文章能够帮你解决python数据分析————matplotlib数据可视化所遇到的程序开发问题。 如果觉得互联网集市技术教程内容还不错,欢迎将互联网集市网站推荐给程序员好友。
内容备注
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 gblab@vip.qq.com 举报,一经查实,本站将立刻删除。
内容手机端
扫描二维码推送至手机访问。