每天的事情真的很多,老师又甩给我一个项目,他跟一个巧克力厂合作,给了我近四年的销售数据,让我分析一下数据返回厂家建议的生产调整。
实际项目我当然很乐意接受啦! 解决现实问题真的很爽,每天跟着国内搞一些不解决实际问题的研究,真的难受。我就是一俗人,只想如何赚钱养家。
画图的时候遇到一个问题,横坐标为数字,但是有缺省。 plt.自动生成的x轴坐标会把所有值看成一个连贯的数列,然后中间缺省。就像这样。
解决这个问题的办法有一下几种:
方法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