如何强制Y轴只在Matplotlib中使用整数?
作者:互联网
我正在使用matplotlib.pyplot模块绘制直方图,我想知道如何强制y轴标签只显示整数(例如0,1,2,3等)而不是小数(例如0,0.5) ,1,1.5,2.等).
我正在查看指导说明并怀疑答案位于matplotlib.pyplot.ylim左右,但到目前为止,我只能找到设置最小和最大y轴值的东西.
def doMakeChart(item, x):
if len(x)==1:
return
filename = "C:\Users\me\maxbyte3\charts\\"
bins=logspace(0.1, 10, 100)
plt.hist(x, bins=bins, facecolor='green', alpha=0.75)
plt.gca().set_xscale("log")
plt.xlabel('Size (Bytes)')
plt.ylabel('Count')
plt.suptitle(r'Normal Distribution for Set of Files')
plt.title('Reference PUID: %s' % item)
plt.grid(True)
plt.savefig(filename + item + '.png')
plt.clf()
解决方法:
如果你有y数据
y = [0., 0.5, 1., 1.5, 2., 2.5]
您可以使用此数据的最大值和最小值来创建此范围内的自然数列表.例如,
import math
print range(math.floor(min(y)), math.ceil(max(y))+1)
产量
[0, 1, 2, 3]
然后,您可以使用matplotlib.pyplot.yticks设置y刻度标记位置(和标签):
yint = range(min(y), math.ceil(max(y))+1)
matplotlib.pyplot.yticks(yint)
标签:axis-labels,python,matplotlib 来源: https://codeday.me/bug/20190927/1822551.html