数据可视化:matplotlib绘制 成绩条形图

数据可视化:matplotlib绘制 成绩条形图

文本:
XiaoBai,90,80
XiaoMin,80,89
ZhangSan,75,78
LiSi,89,98
WangWu,67,89

代码:
import numpy as np
import matplotlib.pyplot as plt
import re

#提取文本文字方式一:
#score_Y,score_S = np.loadtxt(“G:\python\程序\Visual\ShuJv_1”, delimiter=",", skiprows=0, usecols=(1,2), unpack=True)
#提取文本文字方式二:
open = open(“G:\python\程序\Visual\ShuJv_1”, “r”)
text = open.read()
names = re.findall(r’(.?),…,’, text)
score_Y = re.findall(r’,(.
?),’, text)
score_S = re.findall(r’\d+,(\d+)’, text)

#正则提取的是字符串,将字符串数组转换成整型数组
score_Y = list(map(int, score_Y))
score_S = list(map(int, score_S))

plt.figure()
plt.suptitle(“ShiZhan_Score”)
#视图美化
plt.style.use(“ggplot”)

x = np.arange(5)
width_x = 0.3
#绘制条形图
plt.bar(x, height=score_Y, width=width_x)
plt.bar(x + width_x, height=score_S, width=width_x)

#创建图例 loc=0(图例默认选择空白位置出现)
plt.legend([“Language”, “Math”],loc=0)

#显示数据标签
for x1, y1, y2 in zip(x, score_Y, score_S):
plt.text(x1, y1, “%d” % y1,ha=“center”)
plt.text(x1+width_x, y2, “%d” % y2,ha=“center”)
plt.ylim(50, 100)

#设置轴标签
plt.xlabel(“Name”)
plt.ylabel(“Score”)

#文本
plt.figtext(0.1,0.9,“Y_score”)
plt.figtext(0.9,0.1,“X_name”)

#更改X轴刻度
plt.xticks(x, names)

plt.show()
open.close()

结果:
在这里插入图片描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值