python画图(plt.)x轴横坐标被省略了(被间断)怎么办 | 如何让所有横坐标x值都展示出来 | 如何调整横坐标角度

每天的事情真的很多,老师又甩给我一个项目,他跟一个巧克力厂合作,给了我近四年的销售数据,让我分析一下数据返回厂家建议的生产调整。

实际项目我当然很乐意接受啦! 解决现实问题真的很爽,每天跟着国内搞一些不解决实际问题的研究,真的难受。我就是一俗人,只想如何赚钱养家。

画图的时候遇到一个问题,横坐标为数字,但是有缺省。 plt.自动生成的x轴坐标会把所有值看成一个连贯的数列,然后中间缺省。就像这样。
在这里插入图片描述

解决这个问题的办法有一下几种:

  1. 把x轴集合的每一个元素从int型转成str型。
  2. 用显示精度来调整。

方法1:

x = single_category_sales_2017.index
y = single_category_sales_2017.values
x = [str(i) for i in x]    #为了让每个值不被省略,把list中所有的元素都转化成str格式
plt.title("2017 single category sales value")
plt.bar(x,y,label="sales value",color="blue")
plt.xticks(rotation=-30) #斜着展示,角度从逆时针开始算。
plt.legend(loc=1)
plt.show()

变成这样: (完美达到诉求的方式)
在这里插入图片描述

方法2:

import matplotlib.pyplot as plt
import matplotlib.ticker as ticker

x = [0,5,9,10,15]
y = [0,1,2,3,4]

plt.plot(x,y)
plt.gca().xaxis.set_major_locator(ticker.MultipleLocator(5))
plt.show()

核心思想就是引入 import matplotlib.ticker as ticker 然后通过设置ticker.MultipleLocator()的值来表示。
但它变成了这个样子。
在这里插入图片描述

但是我的横坐标并不是每个数字都有的,先放到这里,这个方法不错,将来肯定会用到的。

我爱解决实际的问题!
唉,国内的科研真是变了味了!
疫情中的英国,
加油!
21/06/2020

  • 15
    点赞
  • 35
    收藏
    觉得还不错? 一键收藏
  • 7
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值