Python读取excel表格数据并绘制成柱状图 | 数据排序、柱状图颜色、标签乱码等问题通通能够解决!

python数据分析 专栏收录该内容
2 篇文章 0 订阅

hello大家好,
我是你们的可爱丸,
我们又见面啦!
python的功能十分强大,
它不仅可以用来做爬虫,
还可以用来做数据分析哦!
那么今天我就带着大家
用python 分析表格数据,并绘制成柱状图,
让大家感受一下用python来绘制图表是一种什么感觉。

这是我们今天要分析的表格数据:表格名称为test.xlsx,分为两列,一列是包含姓名信息,一列是包含年龄信息
在这里插入图片描述

1、首先我们需要在python中读取表格test.xlsx的数据,并在控制台输出表格数据,检查所选择的表格是否为目标表格

#导入需要用到的模块
import pandas as pd

#读取目标表格文件,并用people代表读取到的表格数据
people = pd.read_excel('test.xlsx')
#在控制台中输出表格数据
print(people)

在这里插入图片描述
2、将表格数据中的姓名那一列数据设为X轴,年龄那一列数据设为Y轴,并通过plt.show()将柱状图输出

#导入需要用到的模块
import pandas as pd
import matplotlib.pyplot as plt
from matplotlib import rcParams
rcParams['font.family'] = 'simhei'

#读取目标表格文件,并用people代表读取到的表格数据
people = pd.read_excel('test.xlsx')
#在控制台中输出表格数据
print(people)
#x轴是姓名,y轴是年龄
people.plot.bar(x='姓名',y='年龄')
plt.show()

在这里插入图片描述
3、因为表格数据都为中文,所以在图表中出现了文字乱码的情况,这个时候需要在代码中添加如下中文处理模块,标签文字就会正常显示了。

from matplotlib import rcParams
rcParams['font.family'] = 'simhei'

在这里插入图片描述
4、虽然标签的乱码已经解决了,但是我们发现:标签方向、数据排列顺序、柱状图颜色都还没有设置好,所以我们可以通过:

  • plt.xticks(rotation=360)来调整标签方向
  • ascending=False来使数据降序排列,默认为升序排列
  • color='blue'将柱状图颜色统一设置为蓝色

注: 对柱状图进行处理后,还需要对inplace参数进行设置,将inplace设置为True才能成功的显示出修改后的表格。

pandas 中 inplace 参数在很多函数中都会有,它的作用是:是否在原对象基础上进行修改
inplace = True:不创建新的对象,直接对原始对象进行修改;
​inplace = False:对数据进行修改,创建并返回新的对象承载其修改结果。

完整代码如下:

# 微信公众号:chimuyhs 【可爱丸学python】 关注并回复:源码  即可获取源代码
# QQ学习交流群:983460742

#导入需要用到的模块
import pandas as pd
import matplotlib.pyplot as plt
from matplotlib import rcParams
rcParams['font.family'] = 'simhei'

#读取目标表格文件,并用people代表读取到的表格数据
people = pd.read_excel('test.xlsx')
#x轴是姓名,y轴是年龄,让直方图排序显示,默认升序
people.sort_values(by='年龄',inplace=True,ascending=False)
#在控制台中输出表格数据
print(people)
#将直方图颜色统一设置为蓝色
people.plot.bar(x='姓名',y='年龄',color='blue')
#旋转X轴标签,让其横向写
plt.xticks(rotation=360)
plt.show()

运行效果如下:
在这里插入图片描述
好啦,今天的教程就分享到这里啦,如果你觉得有用的话记得点赞、转发支持一下哦~
如果你还想学习更多有关python的学习教程,那就关注我吧,我将定期和大家分享python自学之路上的心得!

  • 10
    点赞
  • 8
    评论
  • 73
    收藏
  • 一键三连
    一键三连
  • 扫一扫,分享海报

©️2021 CSDN 皮肤主题: 技术黑板 设计师:CSDN官方博客 返回首页
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值