matplotlib作业

折线图的1.

# -*- coding: utf-8 -*-
import pandas as pd #用于生成满足绘图要求的数据格式
import numpy as np #用于展示横坐标
from matplotlib import pyplot as plt #用于绘制折线图

population = pd.read_csv(r"LineChart/level1/csv/world-population.csv") #返回值为二维标记数据结构 DataFrame
def plot():
    # ********* Begin *********#
    fig,ax=plt.subplots()
    my_x_ticks = np.arange(1960, 2011, 5)
    plt.xticks(my_x_ticks)
    plt.grid(b=True, color='r', linestyle='--', linewidth=1, alpha=0.3, axis='x', which="major") #设置网格
    ax.plot(population["Year"],population["Population"], linewidth=1, c='#00CC88', marker='*', markersize=4) #绘制点和折线
    ax.set_xlabel("Year", fontsize=12)  #设置x轴标签
    ax.set_ylabel("Population", fontsize=12)
    plt.show()


    # ********* End *********#
    plt.savefig('LineChart/level1/studentanswer/world-population.png') #保存为png格式
    plt.close() #关闭画布窗口
import pandas
import matplotlib
matplotlib.use('Agg')
import matplotlib.pyplot as plt
matplotlib.rcParams['font.family']='SimHei'
matplotlib.rcParams['font.sans-serif'] = ['SimHei']
data=pandas.read_excel("test/各省GDP.xlsx",dtype={"年份":str})

df = data.groupby(['年份'])['GDP'].sum()
x = list(df.index)
y = list(df)
plt.figure(figsize=(10,10))
plt.bar(x, y)
plt.title('GDP条状图')

plt.savefig("image1/gdptxt.jpg")
import pandas
import matplotlib
matplotlib.use("agg")
import matplotlib.pyplot as plt
matplotlib.rcParams['font.family']='SimHei'
matplotlib.rcParams['font.sans-serif'] = ['SimHei']
data=pandas.read_excel("test/银行信息.xlsx")

df = data.groupby('省份')['银行编号'].count()
x = list(df.index.str[:2])
y = list(df)
plt.figure(figsize=(10,10))
plt.pie(y, labels=x)
plt.title('银行省份分布图')

plt.savefig("image2/yhbt.jpg")

import pandas
import matplotlib
matplotlib.use("Agg")
import numpy as np
import matplotlib.pyplot as plt
matplotlib.rcParams['font.family']='SimHei'
matplotlib.rcParams['font.sans-serif'] = ['SimHei']
data=pandas.read_excel("test/银行信息.xlsx")
#代码开始
df = data.groupby('银行种类')['银行编号'].count().sort_values(ascending=False).head(10)
x = list(df.index)
y = list(df)
plt.figure(figsize=(10,10))
plt.plot(x, y)
plt.title('银行种类折线图')
#代码结束
plt.savefig("image3/yhzxt.jpg")
import matplotlib
matplotlib.use('Agg')
import matplotlib.pyplot as plt
import pandas as pd
import datetime
df=pd.read_excel("tbsc/step1/统计数据.xlsx",sheet_name="日期统计")
matplotlib.rcParams['font.family']='SimHei'
matplotlib.rcParams['font.sans-serif'] = ['SimHei']
#代码开始
plt.figure(figsize=(10, 14))
plt.xlabel('日期')
plt.ylabel('金额')
plt.ylim(0,1800)
plt.gca().xaxis.set_major_formatter(matplotlib.dates.DateFormatter('%Y-%m-%d'))
plt.xlim(datetime.date(2000, 5, 20), datetime.date(2000,7,18))
plt.xticks(pd.date_range('2000-5-20','2000-7-18'), rotation=90)
plt.title('日期销售')
plt.plot(df["日期"].dt.date, df["合计金额"])
#代码结束
plt.savefig("image4/rqzxt.jpg")

import matplotlib
matplotlib.use('Agg')
import matplotlib.pyplot as plt
import pandas as pd
import numpy as np
matplotlib.rcParams['font.family']='SimHei'
matplotlib.rcParams['font.sans-serif'] = ['SimHei']
plt.figure(figsize=(10,14))
lb=["烟","饮料","零食","酒"]
j=1
for x in lb:
    df=pd.read_excel("tbsc/step2/类别销售.xlsx",sheet_name=x)
    sj=df.groupby("商品名称")["数量"].sum()
    sj.sort_values(ascending=False,inplace=True)
    sj.index=sj.index.str.replace("\t","")
    sp=sj[:3]
    plt.subplot(2,2,j)
    for i in range(0,3):
        plt.bar(x=i*0.5, height=sj[i],width=0.2,label=sj.index[i])
        plt.text(i*0.5,sj[i]+1,sj[i])
    j=j+1
    plt.xticks([0,0.5,1],[1,2,3])
    plt.title(x)
    plt.legend()
plt.savefig("image5/lbzxt.jpg")
import matplotlib
matplotlib.use('Agg')
import matplotlib.pyplot as plt
import pandas as pd
df=pd.read_excel("tbsc/step3/统计数据.xlsx",sheet_name="类别统计")
matplotlib.rcParams['font.family']='SimHei'
matplotlib.rcParams['font.sans-serif'] = ['SimHei']
#代码开始
plt.figure(figsize=(10,10))
pjz=df["合计金额"].mean()/5
df1=df.loc[df["合计金额"]>=pjz]
qthj=df.loc[df["合计金额"]<pjz]["合计金额"].sum()
df1=df1.append({
            "类别":"其他","合计金额":qthj},ignore_index=True)
plt.pie(df1["合计金额"],labels=df1["类别"],autopct="%0.2f%%")
plt.title('各类别销售分布')
#代码结束
plt.savefig("image6/lbbt.jpg")


posted @ 2022-06-16 18:29  小染``  阅读(140)  评论(0)    收藏  举报