1.折线图
- Series折线图
import numpy as np
import pandas as pd
import matplotlib.pyplot as plt
s = pd.Series([100,200,300,200,150,100])
s.plot()
plt.show()
- DataFrame折线图
import numpy as np
import pandas as pd
import matplotlib.pyplot as plt
data = np.random.randint(50,100,size=(5,6))
index = ['1st','2nd','3th','4th','5th']
columns = ['Jeff','Jack','Rose','Lucy','Liy','Bob']
df = pd.DataFrame(data=data,index=index,columns=columns)
print(df)
df.plot()
plt.show
2.条形图和柱状图
- Series柱状图和条形图
import numpy as np
import pandas as pd
import matplotlib.pyplot as plt
s = pd.Series(data=[100,200,300,200])
s.index = ['Lily','Lucy','Jack','Rose']
#两种图形同时打印会重叠在一张图中
s.plot.bar() #柱状图
s.plot.barh() #条形图


- DataFrame柱状图和条形图
import numpy as np
import pandas as pd
import matplotlib.pyplot as plt
data = np.random.randint(0,100,size=(4,3))
index = list('ABCD')
columns = ['Python','C','Java']
df = pd.DataFrame(data=data,index=index,columns=columns)
df.plot(kind='bar')
df.plot(kind='barh')


2.直方图
- 柱高表示数据的频数,柱宽表示各组数据的组距
- 参数bins:设置直方图方柱的个数上线,值越大柱宽越小,数据分组越细致
- 参数density:默认值False,值为True时把频数转换为概率
import numpy as np
import pandas as pd
import matplotlib.pyplot as plt
s = pd.Series([1,2,2,2,2,2,3,3,4,4,4,5,6,6])
s.plot(kind='hist')
s.plot(kind='hist',bins=5)



3.kde图:核密度估计,用于弥补直方图由于参数bins设置的不合理导致的精度缺失问题
import numpy as np
import pandas as pd
import matplotlib.pyplot as plt
s = pd.Series([1,2,2,2,2,2,3,3,4,4,4,5,6,6])
s.plot(kind='hist',bins=5)
s.plot(kind='kde')
4.饼图
import numpy as np
import pandas as pd
import matplotlib.pyplot as plt
df = pd.DataFrame(
data = np.random.rand(4,2),
index = list('ABCD'),
columns = ['Python','Java']
)
df['Python'].plot(kind='pie',autopct='%.1f%%')
#subplots子图
df.plot.pie(subplots=True)


5.散点图
- 散点图是观察两个一维数据数列之间的关系,DataFrame对象可用
- 需要指定x,y参数
import numpy as np
import pandas as pd
import matplotlib.pyplot as plt
data = np.random.normal(size=(1000,2))
df = pd.DataFrame(data=data,columns=list('AB'))
df.plot(kind='scatter',x='A',y='B')
6.面积图
import numpy as np
import pandas as pd
import matplotlib.pyplot as plt
df = pd.DataFrame(data=np.random.rand(10,4),columns=list('ABCD'))
df.plot(kind='area')
7.箱型图
- 图中每一个箱型图从上到下的横线表示:最大值,75%,50%,25%,最小值
- 空心圆:异常值,离群点
import numpy as np
import pandas as pd
import matplotlib.pyplot as plt
df = pd.DataFrame(data=np.random.rand(10,4),columns=list('ABCD'))
df.plot(kind='box')
知识点为听课总结笔记,课程为B站“千锋教育Pandas数据分析从入门到实战,零基础小白保姆级Python数据分析教程”:001_Pandas_Pandas介绍_哔哩哔哩_bilibili
Pandas学习完结撒花!!!!!!!!!!!!