Python绘图基础:pandas读取Excel文件+bar函数绘制条形图

上一篇文章我们认识了绘图区,以及如何调整坐标轴刻度线、边线等,相信大家对画图已经有了初步的了解。那么就给带领大家使用pandas库读取Excel,绘制一个完整的图形。

附上一篇文章链接:Python绘图基础:认识绘图区+subplot创建子图

Excel名称:data_01.xlsx

 读者可以自行编辑数据

一:pandas读取文件

1:首先我们导入绘图所需要的库

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

2:读取Excel文件

df = pd.read_excel(r"D:\pycharm\pycharm_projects\data\data_01.xlsx", sheet_name=0)
# r"文件路径"
# sheet_name:表示要读取工作表名称。一个Excel中可能有多个sheet,默认第一个sheet_name=0

更多pd.read_excel参数

3:输出Excel文件

print(df)

输出下面图形,就代表成功读取文件:

二:bar函数绘制条形图

1:bar函数参数

ax.bar(x, y, color="k", edgecolor="k", width=0.3, tick_label=x0)

x:         表示x坐标,数据类型为int或float类型,
height:    表示柱状图的高度,也就是y坐标值,数据类型为int或float类型,
width:     表示柱状图的宽度,取值在0~1之间
color:    条形图的颜色
edgecolor:条形图边框颜色
tick_label:条形图刻度标签

更多bar函数参数

2:提取已读数据

x0 = df["国家"]
# 将"国家"这一列转化为列表的形式赋值给x0
# x0 = ["中国","美国","印度","俄罗斯","巴西","印度尼西亚","阿根廷","法国","乌克兰","加拿大"]
y = df["粮食产量"]
# 同样将"粮食产量"这一列转化为列表的形式赋值给y
# y = [68258,57109,31471,13327,11923,11251,7931,6555,6173,5702]

3:绘制图形

完整代码如下:

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

plt.rcParams['font.sans-serif'] = ['SimHei'] # 解决中文乱码问题
fig, ax = plt.subplots(figsize=(10, 5))

# 读取Excel文件
df = pd.read_excel(r"D:\pycharm\pycharm_projects\data\data_01.xlsx", sheet_name=0)

x0 = df["国家"]
x = np.arange(10) # 生成 0~9 十个数,为bar函数提供x轴坐标
y = df["粮食产量"]

ax.bar(x, y, color="k", edgecolor="k", width=0.3, tick_label=x0)
# 上、右边线不显示
ax.spines['top'].set_visible(False)
ax.spines['right'].set_visible(False)

# 只显示y轴网格线
ax.grid(axis="y", c="k", linestyle="-")

# 设置y轴的范围为 0~80000
ax.set_ylim(0, 80000)

# 图名称
ax.set_title("2021年世界各国粮食产量前10强(万吨)", fontsize=14)

# x轴刻度线不显示
ax.tick_params(axis="x", bottom=False)
plt.show()

输出结果如下:

 

  • 12
    点赞
  • 111
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值