Matplotlib(可视化)小案例

一.认识:

Matplotlib是一个Python 2D绘图库,它可以在各种平台上以各种硬拷贝格式和交互式环境生成出具有出版品质的图形。Matplotlib可用于Python脚本,Python和IPython shell,Jupyter笔记本,Web应用程序服务器和四个图形用户界面工具包。

使用导入的模块:

import pandas as pd
import numpy as np
import matplotlib.pyplot as plt

二.导入excel:

sale = pd.read_excel('./路径名/表名.xlsx')
sale.head()

通过上面,导入excel里面的数据

 查看数据的详细信息:

sale.info()

这样我们的准备工作完成了,下面开始使用Matplotlib显示图像

三.显示图像:

我先导入我自己的excel,你们可以导入你们有的excel或者去网上找点excel:

#用来正常显示中文的标签,SimHei是黑体的英文名称
plt.rcParams['font.sans-serif']=['SimHei']
#解决符号显示为方块的问题
plt.rcParams['axes.unicode_minus']=False

sale=pd.read_excel('商品订单表.xlsx')
print(sale.head())
costomer=pd.read_excel('客户信息表.xlsx')
print(costomer.head())
# costomer.info()
sale01=sale[sale['是否退回']==0].groupby(by='年份').agg({'客户编号':np.unique})['客户编号'].apply(len)
print(sale01.index)
x = ['2014年', '2015年', '2016年', '2017年', '2018年', '2019年', '2020年']
y=sale01.values

下面开始写简单二维图像:

plt.figure(facecolor='white',figsize=(8,5),dpi=120)
plt.title('2014至2020年上半年有效订单的客户数',fontsize=14)#表的标题
plt.xlabel('订单日期年',fontsize=12)#x的标题名
plt.ylabel('客户编号不同计数',fontsize=12)#y的标题名
plt.plot(x,y,color="skyblue",alpha=0.4)
plt.fill_between(x,y,color="skyblue",alpha=0.4)#填充颜色
for a,b in enumerate(y):
    plt.text(a,b,'%d'%b,va='bottom',ha='center')
plt.show()#展示图像

运行如下: 

 图像2:

#分析2020上半年有效客户订单客户:使用汽泡图
sale['记录数']=pd.Series(np.ones(shape=(sale.shape[0])),dtype=np.int8)
sale_2020 = sale.loc[(sale['年份'] == 2020) & (sale['是否退回'] == 0)]
df2=sale_2020.groupby('客户类型').nunique()['客户编号']
df2

plt.figure(figsize=(8,3),facecolor='white')
plt.title('2020年上半年有效订单客户的分布',fontsize='13')
plt.ylim(0,300)
plt.scatter(df2.index,df2.values,s=df2.values*100,c=['green','blue','yellow'])
for x,y in enumerate(df2.values):
    plt.text(x,y,str(y),horizontalalignment='center')
plt.show()

四.总结: 

对上面的图像处理来看,只要导入了数据excel,我们就可以通过Matplotlib的简单函数,来显示图像,我们虽然只展示了2个,但是读者你们可自己使用它的直方图、饼状图、柱形图....... 

如果忘记怎样使用的,可以看我的基础篇章:

Matplotlib基础icon-default.png?t=N7T8https://mp.csdn.net/mp_blog/creation/editor/139102389

  • 22
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
好的,我了解了。对于你的问题,我可以给你一个简单的数据分析与可视化案例,使用Python、Pandas和Matplotlib库。 首先,我们需要准备一个数据集。这里我选用了一个名为“tips”的数据集,它记录了一家餐厅的不同顾客在用餐时的消费金额、小费、性别、是否吸烟、用餐时间等信息。你可以在Seaborn库中找到这个数据集。 接下来,我们可以使用Pandas库将数据集导入到Python中,并进行一些简单的数据处理。例如,我们可以计算不同性别的平均小费金额: ```python import pandas as pd # 导入数据集 tips = pd.read_csv("https://raw.githubusercontent.com/mwaskom/seaborn-data/master/tips.csv") # 计算不同性别的平均小费金额 tips.groupby("sex")["tip"].mean() ``` 结果如下: ``` sex Female 2.833448 Male 3.089618 Name: tip, dtype: float64 ``` 接下来,我们可以使用Matplotlib库将这些数据可视化。例如,我们可以绘制不同性别的平均小费金额柱状图: ```python import matplotlib.pyplot as plt # 绘制不同性别的平均小费金额柱状图 tips.groupby("sex")["tip"].mean().plot(kind="bar") # 设置图形标题和坐标轴标签 plt.title("Average Tip by Gender") plt.xlabel("Gender") plt.ylabel("Tip") # 显示图形 plt.show() ``` 结果如下: ![Average Tip by Gender](https://i.imgur.com/5XjVwUH.png) 这只是一个简单的数据分析与可视化案例,你可以根据自己的需求和数据集进行更复杂的数据分析和可视化

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

eqwaak0

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值