python:为Excel制作图表
导入Excel数据制作图表
import matplotlib.pyplot as plt
import pandas as pd
import xlwings as xw
#读取Excel数据制作图表再保存到Excel
def demo_Func5():
df=pd.read_excel('C:\\Users\\14486\\Desktop\\测试文件\\左\\销售统计表.xlsx',engine="openpyxl")#从指定工作簿中读取数据
figure=plt.figure()#创建一个绘图窗口
plt.rcParams['font.sans-serif']=['SimHei']#为图表中的中文文本设置默认字体,避免乱码
plt.rcParams['axes.unicode_minus']=False #解决坐标值为负数时,无法正常显示负号的问题
x=df['材料名称']#指定月份为x坐标的值
y=df['支出量']
plt.bar(x,y,color='black')
app=xw.App(visible=False)
workbook=app.books.open('C:\\Users\\14486\\Desktop\\测试文件\\左\\销售统计表.xlsx')
worksheet=workbook.sheets['产品销售统计']
worksheet.pictures.add(figure,left=500)#在工作表中插入柱形图
workbook.save()
workbook.Close()
app.quit()
制作散点图
plt.scatter(x,y,s=500,color='red',marker='*')
制作面积图
plt.stackplot(x,y,colors='red')
制作折线图表
#制作组合图表
def demo_Func6():
df=pd.read_excel('C:\\Users\\14486\\Desktop\\测试文件\\左\\销售统计表.xlsx',engine="openpyxl")#从指定工作簿中读取数据
plt.rcParams['font.sans-serif'] = ['SimHei'] # 为图表中的中文文本设置默认字体,避免乱码
plt.rcParams['axes.unicode_minus'] = False # 解决坐标值为负数时,无法正常显示负号的问题
x = df['材料名称'] # 指定月份为x坐标的值
y1 = df['支出量']
y2=df['现库存']
plt.plot(x,y1,color='black',linewidth=4)#利用x y1 制作折线图
plt.bar(x,y2,color='blue')#用x和y2制作柱形图
plt.show()
为图表设置标题和坐标轴标题
#添加设置图表标题和坐标轴标题
def demo_Func7():
df=pd.read_excel('C:\\Users\\14486\\Desktop\\测试文件\\左\\销售统计表.xlsx',engine="openpyxl")#从指定工作簿中读取数据
figure=plt.figure()#创建一个绘图窗口
plt.rcParams['font.sans-serif']=['SimHei']#为图表中的中文文本设置默认字体,避免乱码
plt.rcParams['axes.unicode_minus']=False #解决坐标值为负数时,无法正常显示负号的问题
x=df['材料名称']#指定月份为x坐标的值
y=df['支出量']
plt.bar(x,y,color='black')
#真正工作
plt.title(label='各水果销售情况',fontdict={'family':'KaiTi','color':'red','size':30},loc='left')#设置图表标题
plt.xlabel('水果类型',fontdict={'family':'SimSun','color':'black','size':20},labelpad=20)#设置x轴标题
plt.ylabel('销售数量',fontdict={'family':'SimSun','color':'black','size':20},labelpad=20)
plt.show()
添加图例
plt.bar(x,y,color='black',label='销售数量')
plt.legend(loc='upper left',fontsize=20)#添加并设置图例 图例名=销售数量

浙公网安备 33010602011771号