Matplobilb库数据分析常用图
Matplotlib是一个Python的2D绘图库,通过Matplotlib,开发者可以仅需要几行代码,便可以生成折线图,直方图,条形图,饼状图,散点图等。详情可查看Matplotlib库API文档
0. 安装
如果是用Anaconda,可以通过 conda install matplotlib 或者通过 pip install matplotlib 进行安装
1. 基本使用
plot是一个画图的函数,他的参数为plot([x],y,[fmt],data=None,**kwargs),其中fmt可以传一个字符串,用来给这个图做一些样式修改的。fmt默认的绘制样式是 b- ,也就是蓝色实体线条。其中使用 : 代表点线,是matplotlib的一个缩写。这些缩写还有以下的:
字符 | 类型 | 字符 | 类型 |
---|---|---|---|
‘-’ | 实线 | ‘–’ | 虚线 |
‘-.’ | 虚点线 | ‘:’ | 电线 |
‘.’ | 点 | ‘,’ | 像素点 |
‘o’ | 圆点 | ‘v’ | 下三角点 |
‘^’ | 上三角点 | ‘<’ | 左三角点 |
‘>’ | 右三角点 | ‘1’ | 下三叉点 |
‘2’ | 上三叉点 | ‘3’ | 左三叉点 |
‘4’ | 右三叉点 | ‘s’ | 正方点 |
‘p’ | 五角点 | ‘*’ | 星形点 |
‘h’ | 六边形点1 | ‘H’ | 六边形点2 |
‘+’ | 加号点 | ‘x’ | 乘号点 |
‘D’ | 实心菱形点 | ‘d’ | 瘦菱形点 |
'_'横线点 | ‘’ |
补充:
(1)plt.plot可以只传Y轴的值,如果只传Y轴的值,那么X轴就会默认使用range(0,Y的长度)
(2)plt.plot的x和y参数不能够作为关键字参数来传递,只能作为位置参数来传
(3)plt.plot中的data参数可以为一个字典或者DataFrame对象,然后在x和y上指定这个列的名字,那么plot会自动读取。这里有一个细节,因为x,y,fmt都是在前面,所以如果只传x和y,那么可能会产生歧义,这时候我们可以多传一个空的参数作为fmt的参数,就不会出现警告的情况。
除了设置线条的形状外,我们还可以设置点的颜色。给线条设置颜色总体来说有三种方式,第一种是使用颜色名称(r是red的缩写)的形式,第二种是使用十六进制的方式,第三种是使用RGB或RGBA的方式。如果使用的是颜色名称,那么可以和线的形状卸载同一个字符串中。其中可以表示颜色的缩写字符有如下:
字符 | 颜色 |
---|---|
‘b’ | 蓝色,blue |
‘g’ | 绿色,green |
‘r’ | 红色,red |
‘c’ | 青色,cyan |
‘m’ | 品红,magenta |
‘y’ | 黄色,yellow |
'k’黑色,black | |
‘w’ | 白色,white |
import matplotlib.pyplot as plt
import numpy as np
import pandas as pd
y = [np.random.randint(0,10) for x in range(20)]
x = range(5,25)
#不设置横轴的话自动使用range函数从0开始 截止到纵轴点的个数
plt.plot(x,y)
#传递字典
mydata = {
"a":range(5,25),
"b":[np.random.randint(0,10) for x in range(20)]
}
plt.plot("a","b","",data=mydata)
#DataFrame做参数
mydf = pd.DataFrame(data = mydata)
plt.plot("a","b","*",data=mydf)
#设置颜色的三种方式
#将颜色线条设置成红色
plt.plot([1,2,3,4,5],[1,2,3,4,5],'r')
#使用红色的五角点
plt.plot([1,2,3,4,5],[1,2,3,4,5],'rp')
#将颜色设置成红色
plt.plot([1,2,3,4,5],[1,2,3,