Pandas绘制柱状图和直方图

import pandas as pd
import matplotlib.pyplot as plt

data = pd.read_csv("test03.csv", index_col='Year')
print(data.shape)
print(data.head(6))

plt.rcParams['font.sans-serif'] = ['SimHei']  # 用来正常显示中文标签
plt.rcParams['axes.unicode_minus'] = False    # 用来正常显示负号

p1 = plt.subplot(221)  # 22表示共4(2*2)个子图,1表示第一张子图
data['A'].plot(color='r', kind='bar')  # 柱状图
plt.sca(p1)

p2 = plt.subplot(222)  # 22表示共4(2*2)个子图,1表示第一张子图
data['B'].plot(color='y', kind='barh')  # 横向柱状图
plt.sca(p2)

p3 = plt.subplot(223)  # 22表示共4(2*2)个子图,1表示第一张子图
data.C.plot(kind='line')  # 折线图
plt.sca(p3)

p4 = plt.subplot(224)  # 22表示共4(2*2)个子图,1表示第一张子图
data['D'].plot(color='y', kind='kde')
plt.sca(p4)  # 密度图

plt.show()

结果为:
Pandas绘制柱状图和直方图_第1张图片
累计柱状图:

data.plot(kind='bar', stacked=True)  # 累计柱状图
plt.legend(loc='upper right')

Pandas绘制柱状图和直方图_第2张图片


import pandas as pd
import numpy as np
import matplotlib.pyplot as plt

data = np.random.normal(5.0, 3.0, 1000)  # 均值是5,标准差是3
pData = pd.DataFrame(data)  # data的类型转换
print(pData)
pData.hist(histtype='stepfilled', bins=30, normed=True)
plt.show()    # histtype='stepfilled'柱状图之间没有间隔   bins=30,直方图的宽度

Pandas绘制柱状图和直方图_第3张图片

你可能感兴趣的:(作图,Pandas,柱状图,直方图)