我策划了这个阴谋
我需要去掉沿y轴的百分比中的小数。
此外,我在保存下面的figure.code和错误消息时出错。
plt.figure()
cm = plt.cm.rainbow
weight = np.ones(len(ozone)) / len(ozone)
n, bins, patches = plt.hist(ozone, 50, weights = weight, color='green', ec = 'black', linewidth = .5)
plt.gca().yaxis.set_major_formatter(PercentFormatter(1, decimals = None))
for i, p in enumerate(patches):
plt.setp(p, 'facecolor', cm(i/25)) # notice the i/25
plt.ylabel('Relative frequency (%)')
plt.xlabel('Ozone mixing ratio (ppbv)')
plt.xlim(0,140)
plt.title('Urban JJA relative ozone frequency')
plt.tight_layout()
plt.savefig('Urban Ozone Distribution.jpg')
>>> OSError: [Errno 22] Invalid argument: 'Urban Ozone Distribution.jpg'
谢谢
1条答案
按热度按时间jjjwad0x1#
None
作为小数的值PercentFormatter(1, decimals = None)
表示“数字将自动计算”(https://matplotlib.org/stable/api/ticker_api.html#matplotlib.ticker.percentformatter). 使用decimals=0
.