python:matplolib数据可视化--折线图

tech2026-08-18  2

折线图主要看内容随着时间变化的趋势 import pandas as pd import matplotlib.pyplot as plt

#让中文和负号的正常显示 plt.rcParams[‘font.sans-serif’] = [‘SimHei’] plt.rcParams[‘axes.unicode_minus’]=False

#读取需要绘图的数据 df = pd.read_excel(r’E:\数据分析小灶\小灶商业数据分析LV1等多个文件等多个文件\小灶商业数据分析LV1等多个文件\小灶商业数据分析LV2\模块3 :数据概述与数据可视化\16第7课:Matplotlib学习之数据可视化\16-08user_analysis.xlsx’)

df #这个是呈现数据 NAT时间维度上的空值 NAN除了时间之外的所有空值

df.dropna(axis=0) #去除空值行 绘图 #设置图框的大小 fig=plt.figure(figsize=(8,4)) #绘图 plt.plot(df[‘时间’], #x轴数据 df[‘新关注人数’] #y轴数据 )

#添加标题和坐标轴标签 plt.title(‘公众号日增人数’) plt.xlabel(‘日期’) plt.ylabel(‘新增人数’)

#y轴文字的倾斜度 fig.autofmt_xdate(rotation=45)

#显示图形 plt.show()

在一张图上画多个折线图 #设置图框的大小 fig=plt.figure(figsize=(8,4))

#设置seaborn绘图风格,可在matplolib中直接调取风格 plt.style.use(‘seaborn’)

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

#一张图上画多个折线图 plt.plot( df[‘新关注人数’],#y轴数据 label=‘新关注人数’, marker = ‘o’, #点的形状 markersize=5, #点的大小 markerfacecolor = ‘mediumpurple’ # 点的填充色 ) plt.plot( df[‘取消关注人数’],#y轴数据 label=‘取消关注人数’, marker = ‘o’, #点的形状 markersize=5, #点的大小 markerfacecolor = ‘orangered’ #点的填充色 )

#添加标题和坐标轴标签 plt.title(‘公众号日增人数’) plt.xlabel(‘日期’) plt.ylabel(‘新增人数’)

#y轴文字的倾斜度 fig.autofmt_xdate(rotation=45)

#显示图例 plt.legend()

#显示图形 plt.show()

结论:相比新关注人数,取消关注的人数波动较小

顺便一提,出现一个bug no handles with labels found to put in legend怎么办 对策就是分别在plt.plot里面添加 label=‘xx’ 比如这次 label=‘取消关注人数’,

#设置图框的大小 fig=plt.figure(figsize=(8,4))

#设置seaborn绘图风格,可在matplolib中直接调取风格 plt.style.use(‘seaborn’) plt.rcParams[‘font.sans-serif’]=[‘SimHei’] #用来正常显示中文标签 plt.rcParams[‘axes.unicode_minus’]=False #用来正常显示负号

#绘图 plt.plot( df[‘新关注人数’],#y轴数据 label=‘新关注人数’, ) plt.plot( df[‘净增关注人数’],#y轴数据 label=‘净增关注人数’, )

#添加标题和坐标轴标签 plt.title(‘公众号日增人数’) plt.xlabel(‘日期’) plt.ylabel(‘新增人数’)

#y轴文字的倾斜度 fig.autofmt_xdate(rotation=45)

#显示图例 plt.legend()

#显示图形 plt.show()

结论:新关注的人数和净增关注的人数的变化十分相似

最新回复(0)