matplotlib 横坐标只显示整数_面试题系列 (168) matplotlib条形图绘制

之前面试被问到的图表绘制问题,因为涉及项目的时候,经常会做一些报表之类的,那么这样的数据统计图表绘制报表该怎么做,需要用到哪些技术呢?接下来几篇面试文章将会讲解一些常见图表绘制工具与用法,比如matplotlib和前端echarts.js等,本公众号文章所有代码都免费开源,在环境没问题的情况下,也尽可能会做到你那边只要运行就能跑,最大限度不出现差错。matplotlib绘制条形图:首先看效果,很常见的图形,横坐标是名字,纵坐标是分数

bf6baa7e1cad1b2fbaf67ee0986a4c79.png

from matplotlib import pyplot as plt
from matplotlib import font_manager

# 解决中文乱码
plt.rcParams['font.sans-serif'] = ['SimHei']
plt.rcParams['font.serif'] = ['SimHei']

# 设置字体
my_font = font_manager.FontProperties()

# 设置画布大小
plt.figure(figsize=(20,10),dpi=80)

# 每个名称和分数,必须一一对应
a = ["小张","小李","小王","小赵","小孙","小钱","小武","小郑","小冯","小码"]

b=[55,80,75,90,82,30,42,99,54,66]

# 条形图
plt.bar(a,b, align='center',color='orange',alpha=0.8)

# x轴刻度
plt.xticks(range(len(a)),a,rotation=0,fontproperties=my_font)

# 绘制网格
plt.grid(alpha=0.2,color="#cccccc")

# 设置y轴范围
plt.ylim([0,100])

# 设置标题
plt.ylabel("姓名",fontproperties=my_font)
plt.xlabel("分数",fontproperties=my_font)
plt.title("姓名分数条形图",fontproperties=my_font)


# 显示图形
plt.show()

代码如上,注释写的很清楚,不过有几点需要注意

1、中文乱码问题,需要加两行代码解决中文乱码问题

plt.rcParams['font.sans-serif'] = ['SimHei']
plt.rcParams['font.serif'] = ['SimHei']
2、图形属性,bar是条形图,可以控制颜色透明度位置、宽度等
plt.bar(a,b, align='center',color='orange',alpha=0.8)
3、绘制刻度,需要注意有多少个刻度,range(len(a)),rotation是旋转角度,有时候可以用来字体倾斜
plt.xticks(range(len(a)),a,rotation=0,fontproperties=my_font)
4、用来约束y轴的坐标范围
plt.ylim([0,100])
5、其他的诸如标题、轴标签等更多属性可以参考官方文档查询6、展示图形,必须要用show()来展示
plt.show()

python爬虫人工智能大数据公众号

c5fe1f5ddeca468e2fc0b0842f8fda2f.gif

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值