python使用pandas读取excel绘制柱状图,折线图,饼状图
excel
import pandas as pd
import matplotlib.pyplot as plt
def column_chart(excel_path, sheet_name):
"""
柱状图
:param excel_path:
:param sheet_name:
:return:
"""
plt.rcParams[font.sans-serif] = [SimHei] # 用来正常显示中文标签
plt.rcParams[axes.unicode_minus] = False # 用来正常显示负号
df = pd.read_excel(excel_path, sheet_name=sheet_name)
print(df)
# 接下来我们通过pandas库下面的bar来设置柱形图的X,Y坐标轴
df.plot.bar(x="月份", y="页面浏览量(PV)")
# 然后通过pyplot的show方法将柱形图进行展示出来
plt.show()
def line_chart():
"""
折线图
:return:
"""
plt.rcParams[font.sans-serif] = [SimHei] # 用来正常显示中文标签
plt.rcParams[axes.unicode_minus] = False # 用来正常显示负号
df = pd.read_excel("example.xlsx", sheet_name="Sheet2")
x = df["月份"]
y1 = df["页面浏览量(PV)"]
plt.plot(x, y1)
# plt.xlabel("月份")
# plt.ylabel("PV")
plt.legend()
plt.show()
def pie_chart():
plt.rcParams[font.sans-serif] = [SimHei] # 用来正常显示中文标签
plt.rcParams[axes.unicode_minus] = False # 用来正常显示负号
df = pd.read_excel("example.xlsx", sheet_name="Sheet2")
labels = ["1月", "2月", "3月", "4月", "5月", "6月", "7月", "8月", "9月", "10月", "11月", "12月"]
x = df["贡献下游浏览量"]
plt.pie(x, labels=labels, autopct=%1.1f%%)
plt.axis("equal")
plt.title(贡献下游浏览量)
plt.show()
if __name__ == __main__:
column_chart("example.xlsx", "Sheet2")
line_chart()
pie_chart()
效果
