首页 > 编程语言 >python数据分析绘图

python数据分析绘图

时间:2023-02-26 22:45:15浏览次数:34  
标签:数据分析 plot plt python 绘图 pd np import data

import pandas as pd
catering_sale = 'D:\计算机网络\catering_sale.xls'
data=pd.read_excel(catering_sale ,index_col='日期')
print(data.describe())

 

 

 

 餐饮销额数据异常值检测

import matplotlib.pyplot as plt
plt.rcParams['font.sans-serif']=['SimHei']
plt.rcParams['axes.unicode_minus']=False
plt.figure()
p=data.boxplot(return_type='dict')
x=p['fliers'][0].get_xdata()
y=p['fliers'][0].get_ydata()
y.sort()

for i in range(len(x)):
    if i>0:
        plt.annotate(y[i],xy=(x[i],y[i]),xytext=(x[i]+0.05  -0.8/(y[i]-y[i-1]),y[i]))
    else:
        plt.annotate(y[i],xy=(x[i],y[i]),xytext=(x[i]+0.08,y[i]))
plt.show()

 

正余弦函数绘制

from pylab import*
import numpy as np
x=np.arange(0,6,0.1)
y1=np.sin(x)
y2=np.cos(x)
plt.plot(x,y1,label='sin x')
plt.plot(x,y2,linestyle='--',label='cos x')
plt.xlabel('X')
plt.ylabel('Y')
plt.title('正余弦函数(3144)')
plt.legend()
plt.show()

 

饼图绘制

labels='Frogs','Hogs','Dogs','Logs'
sizes=[15,30,45,10]
colors=['yellowgreen','gold','lightskyblue','lightcoral']
explode=(0,0.1,0,0)
plt.pie(sizes,explode=explode,labels=labels,colors=colors,autopct='%1.lf%%',shadow=True,startangle=90)
plt.axis('equal')#显示为圆
plt.title("饼图(3144)",fontsize=20)
plt.show()

 

 

 

 二维条形直方图

import numpy as np
x=np.random.randn(1000)
plt.hist(x,10)
plt.title("二维条形直方图(3144)",fontsize=20)
plt.show()

 

 

 

import numpy as np
import pandas as pd
x = np.random.randn(1000)  # 1000个服从正态分布的随机数
D = pd.DataFrame([x, x+1]).T  # 构造两列的DataFrame
D.plot(kind = 'box')  # 调用Series内置的绘图方法画图,用kind参数指定箱型图box
plt.title("箱型图(3144)",fontsize=20)
plt.show()

 

 

数据对比

import numpy as np
import pandas as pd
x=pd.Series(np.exp(np.arange(20)))
plt.figure(figsize=(8,9))
axl=plt.subplot(2,1,1)
x.plot(label='原始数据图',legend=True)
plt.title("原始数据图(3144)",fontsize=20)
axl=plt.subplot(2,1,2)
x.plot(logy=True,label='对数数据图',legend=True)
plt.title("对数数据图(3144)",fontsize=20)
plt.show()

 

 

 误差条形图

import numpy as np
import pandas as pd
error=np.random.randn(10)
y=pd.Series(np.sin(np.arange(10)))
y.plot(yerr=error)
plt.title("误差条形图(3144)",fontsize=20)
plt.show()

 

 

 

餐饮季度销售额频率分布直方图

import pandas as pd
import numpy as np
catering_sale = 'D:\python数据挖掘\catering_fish_congee.xls'  # 餐饮数据
data = pd.read_excel(catering_sale,names=['date','sale'])  # 读取数据,指定“日期”列为索引
bins = [0,500,1000,1500,2000,2500,3000,3500,4000]
labels = ['[0,500)','[500,1000)','[1000,1500)','[1500,2000)',
       '[2000,2500)','[2500,3000)','[3000,3500)','[3500,4000)'] 

data['sale分层'] = pd.cut(data.sale, bins, labels=labels)
aggResult = data.groupby(by=['sale分层'])['sale'].agg([('sale',np.size)])
pAggResult = round(aggResult/aggResult.sum(), 2, ) * 100

import matplotlib.pyplot as plt
plt.figure(figsize=(10,6))  # 设置图框大小尺寸
pAggResult['sale'].plot(kind='bar',width=0.8,fontsize=10)  # 绘制频率直方图
plt.rcParams['font.sans-serif'] = ['SimHei']  # 用来正常显示中文标签
plt.title('餐饮季度销售额频率分布直方图(3144)',fontsize=20)
plt.show()

 

 

 

 菜品销售量分布饼图

import pandas as  pd
import matplotlib.pyplot as plt
catering_dish_profit='D:\python数据挖掘\data\catering_dish_profit.xls' #餐饮数据
data=pd.read_excel(catering_dish_profit)                #读取数据

#绘制饼图
x=data['盈利']
labels=data['菜品名']
plt.figure(figsize=(8,6))     #设置画布大小
plt.pie(x,labels=labels)       #绘制画饼
plt.rcParams['font.sans-serif'] = 'SimHei'
plt.title('菜品销售量分布饼图(3144)')  #设置标题
plt.axis('equal')
plt.show()

 

 

 

 

不同部门各月份的销售对比情况

 

import pandas as pd
import matplotlib.pyplot as plt
data=pd.read_excel("D:\python数据挖掘\data\dish_sale.xls")

plt.figure(figsize=(8,4))
plt.plot(data['月份'],data['A部门'],color='green',label='A部门',marker='o')
plt.plot(data['月份'],data['B部门'],color='red',label='B部门',marker='s')
plt.plot(data['月份'],data['C部门'],color='skyblue',label='C部门',marker='x')
plt.legend() #显示图例
plt.ylabel('销售额(万元)')
plt.title('不同部门各月份的销售对比情况(3144)')
plt.show()

#B部门各年份之间销售金额的比较
data=pd.read_excel("D:\python数据挖掘\data\dish_sale_b.xls")

plt.figure(figsize=(8,4))
plt.plot(data['月份'],data['2012年'],color='green',label='2012年',marker='o')
plt.plot(data['月份'],data['2013年'],color='red',label='2013年',marker='s')
plt.plot(data['月份'],data['2014年'],color='skyblue',label='2014年',marker='x')
plt.legend() #显示图例
plt.ylabel('销售额(万元)')
plt.title('不同部门各月份的销售对比情况(3144)')
plt.show()

 

 某单位日用电量预测分析

import pandas as pd
import matplotlib.pyplot as plt

df_normal = pd.read_csv("D:\python数据挖掘\data\user.csv")
plt.figure(figsize=(8,4))
plt.plot(df_normal["Date"],df_normal["Eletricity"])
plt.xlabel("日期")
#设置x轴刻度间隔
x_major_locator = plt.MultipleLocator(7)
ax=plt.gca()
ax.xaxis.set_major_locator(x_major_locator)
plt.ylabel("每日电量")
plt.title("正常用户电量趋势(3144)",fontsize=20)
plt.rcParams['font.sans-serif']=['SimHei']
plt.show()

#窃电用户用电趋势分析
df_steal = pd.read_csv("D:\python数据挖掘\data\Steal user.csv")
plt.figure(figsize=(10,9))
plt.plot(df_steal["Date"],df_steal["Eletricity"])
plt.xlabel("日期")
plt.ylabel("日期")
x_major_locator=plt.MultipleLocator(7)
ax=plt.gca()
ax.xaxis.set_major_locator(x_major_locator)
plt.title("窃电用户用电趋势(3144)",fontsize=20)
plt.rcParams['font.sans-serif']=['SimHei']
plt.show()

 

 菜品盈利数据帕累托图

 

 

import pandas as pd
dish_profit = 'D:\python数据挖掘\data\catering_dish_profit.xls'
data=pd.read_excel(dish_profit,index_col='菜品名')
data=data['盈利'].copy()
data.sort_values(ascending=False)

import matplotlib.pyplot as plt
plt.rcParams['font.sans-serif']=['SimHei']
plt.rcParams['axes.unicode_minus']=False
plt.figure()
data.plot(kind='bar')
plt.ylabel('盈利(无)')
p=1.0*data.cumsum()/data.sum()
p.plot(color='r',secondary_y=True,style='-o',linewidth=2)
plt.annotate(format(p[6],'.4%'),xy=(6,p[6]),xytext=(6*0.9,p[6]*0.9),arrowprops=dict(arrowstyle="->",connectionstyle="arc3,rad=.2"))#图上标注
plt.ylabel('盈利(比例')
plt.title("菜品盈利数据帕累托图(3144)",fontsize=20)
plt.rcParams['font.sans-serif']=['SimHei']
plt.show()

 

 

 

通过本章学习数据认识到了数据质量分析要求先对数据检测是否存在缺失值和异常值;而数据特征分析要求我们在数据挖掘建模前,通过频率分布分析、对比分析、帕累托分析、周期性分析、相关性分析等方法,对采集的样本数据的特征进行分析,以了解数据的规律和趋势,为数据挖掘的后续环节提供支持。

 

标签:数据分析,plot,plt,python,绘图,pd,np,import,data
From: https://www.cnblogs.com/zjx15975136073/p/17158060.html

相关文章

  • 在python中使用ChatGPT
    首先,安装HuggingFaceTransformers库和PyTorch库。在终端中运行以下命令:pipinstalltransformerspipinstalltorch然后,使用以下代码来初始化ChatGPT模型并生成......
  • python绘图函数
    1.plot绘制线型图importmatplotlib.pyplotaspltimportnumpyasnpimportpandasaspdplt.rcParams['font.sans-serif']=['SimHei']plt.rcParams['axes.unicod......
  • Python.
    1.用python第三方库绘制sinx函数图像importmatplotlib.pyplotaspltplt.rcParams['font.sans-serif']=['SimHei']plt.rcParams['axes.unicode_minus']=False#plt.pl......
  • 用python画数据分析第三章的图
    importpandasaspdcatering_sale=(r'D:\sjfx\catering_sale.xls')data=pd.read_excel(catering_sale,index_col='日期')print(data.describe())  importmatplotli......
  • ros2与Python入门教程-新建ros2工作空间
    ROS2与Python入门教程-新建ros2工作空间说明:介绍如何创建ros2工作空间概念:工作空间是包含ROS2软件包的目录。在使用ROS2之前,有必要在计划使用的终端中提供ROS2安装工作区。......
  • [oeasy]python0094_视频游戏_双人网球_pong_atari_mos_6502_雅达利_米洛华
    编码进化回忆上次内容上次我们回顾了微软之前的比尔盖茨和保罗艾伦mits迎来的是帮手还是隐患?intel-8080遇到了mos-6502底层硬件驱动游戏行业进化不光是扑克牌和柏......
  • Python学习笔记之环境搭建
    (Python学习笔记之环境搭建)Python是一种编程语言,可以让您更快地工作并更有效地集成系统。您可以学习使用Python,并立即看到生产力的提高和维护成本的降低。Python是荷......
  • 简单用Python画各种图分析数据
                                  以上这些只是作为初学者运用绘图功能来对数据进行分析,过程中有遇到一......
  • python数据挖掘绘图
                                                         ......
  • python绘图
    1.用python第三方库绘制sinx函数图像importmatplotlib.pyplotaspltplt.rcParams['font.sans-serif']=['SimHei']plt.rcParams['axes.unicode_minus']=False#plt.pl......