栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 后端开发 > Python

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

Python 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

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:pycharmpycharm_projectsdatadata_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:pycharmpycharm_projectsdatadata_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", line)

# 设置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()

输出结果如下:

 

转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/846315.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号