往期数据分析笔记
【笔记】python数据分析——numpy初识1
【笔记】python数据分析——numpy初识2
【笔记】python数据分析——变换与编程中的轴
【笔记】python数据分析——numpy随机数函数
【笔记】python数据分析——numpy数组索引及切片
【笔记】python数据分析——元素级运算及通用函数
【笔记】python数据分析——条件逻辑运算
【笔记】python数据分析——统计学运算
【笔记】python数据分析——矩阵相乘
【笔记】python数据分析——应用案例之图像负片
【笔记】python数据分析——pandas初识
【笔记】python数据分析——pandas之增删查改
【笔记】python数据分析——pandas可视化之线型图
【笔记】python数据分析——pandas可视化之柱状图
【笔记】python数据分析——pandas可视化之直方图和密度图
【笔记】python数据分析——pandas可视化之散点图
【笔记】python数据分析——pandas可视化之总结案例
为什么是浅谈呢?
因为现在市面上用的最多的可视化基本上都是用pycharts来画的,而且那个库很简单,画出来的图也都很精美,但是matplotlib的需求现在也还是存在的,我们常在论文中需要这种类型的图片,所以今天就带大家了解一下
matplotlib之线型图
构建数据
import numpy as np
import pandas as pd
import matplotlib.pyplot as plt
data = {
'name':['张三','李四','王五','赵六'],
'math':['40','80','99','78']
}
df = pd.DataFrame(data)
print(df)
运行结果:
name math
0 张三 40
1 李四 80
2 王五 99
3 赵六 78
前三行是导包,我相信看过之前笔记的兄弟们已经非常了解了
之后我先是构建了一个成绩表,然后将他们转为了DataFrame数据结构,然后将其输出,运行结果就是输出的结果
创建图表
plt.plot(df['name'],df['math'])
plt.show()
运行图:
图虽然出来了,但是有个问题呀,就是我指定了X轴是name那一列,为什么会显示成乱码呢,接下来我们换种方式看看效果
plt.plot(df.index,df['name'])
plt.show()
运行图:
这个运行图就没有那种类似乱码的了,是因为我们使用的是数据的索引来当作X轴,以后我们也经常会这样用
有兄弟就要说了,你这个用的是索引,我看的不清楚,我必须要用汉字来弄,好家伙,傲娇,我喜欢,哈哈,其实乱码的原因就是因为找不到字体形成的,我们直接给他指定一种字体就可以了
plt.rcParams['font.sans-serif']=['simhei']
加上这一句代码,然后我们再使用最开始的代码,我们就发现可以正常显示汉字了
运行图:
样式修改
plt.plot(df.indexx,df['name'],color='red',linestyle='--',marker='D')
plt.show()
color表示的是线条颜色,运行图:
linestyle表示的是线条样式,运行图:
marker表示的是将对应坐标描点,运行图:
分享一个快捷的设置方法——将颜色、线条和点标记一起设置。
plt.plot(df.index,df['math'],'co--')
plt.show()
运行图:
matplotlib之柱状图
绘制图像
names = [0,1,2,3]
books = [6,4,7,8]
plt.bar(names,books)
plt.show()
plt.barh(names,books)
plt.show()
运行图:
网状格属性
plt.grid(color = 'red',alpha = 0.2)
运行图:
是不是有兄弟觉得这个和我们之前学过的pandas可视化有一些莫名的相似呢,不要觉得,它就是相似,之前讲过的属性在这里也是可以使用的,而且散点图,直方图都是只改变一下plt的方法而已,在这里我就不介绍了,有需要兄弟们多看看前面的笔记,就能懂了
网格布局
图表布局的意思就是很多张图放在同一张画布上,许多人工智能或者是对图表举例的时候都会用到
创建画布
fig = plt.figure(figsize=(10,6))
plt.show()
这个代码的意思就是创建一个长为10.宽为6的空白画布,是不是看下面的运行图就觉得非常的空白呀,哈哈
运行图:
添加图表
fig = plt.figure(figsize=(10,6))
a1 = fig.add_subplot(2,3,1)
plt.show()
运行图:
add_subplot里面有三个参数,第一个参数是横向几行,第二个参数是纵向几列,第三个参数是放在第几个,我上面代码的意思就是画布中可以放两行三列一共6个图,a1这个图放在第一个
绘制图像
fig = plt.figure(figsize=(10,6))
a1 = fig.add_subplot(2,3,1)
year = [1990,2000,2002,2010]
gdp = [300,500,800,1100]
a1.plot(year,gdp)
plt.show()
运行图:
添加标题
fig = plt.figure(figsize=(10,6))
a1 = fig.add_subplot(2,3,1)
year = [1990,2000,2002,2010]
gdp = [300,500,800,1100]
a1.plot(year,gdp)
plt.title('测试图表布局')
plt.show()
运行图:
今日鸡汤
我们这一辈子,注定会经历很多不如意,如果无法学会与自己和解,真的会很累!与其盯着那些不好的,不如带着一颗乐观满足的心,寻找生命的确幸,积蓄勇敢的力量。