我试图绘制从h5文件读入的一些基本数据。对于上下文来说,它是使用各种阈值在图像中检测到的变化特征的区域。 我可以绘制数据确定,但y轴使用科学记数法显示值。我能够克服这一点,但现在有一个抵消。我尝试了很多东西,但都没有成功。我不太熟悉matplotlib的格式化轴和操作细节。从matplotlib中删除偏移量
我的代码如下:
infile = 'myH5file.h5'
f = h5py.File(file, 'r')
dset = f['/DATA/DATA']
sum = []
threshold = ['1','2','3']
Th1 = dest[...,0]
Th1 = numpy.sum(Th1)
sum.append(Th1)
Th2 = dest[...,0]
Th2 = numpy.sum(Th2)
sum.append(Th2)
Th3 = dest[...,0]
Th3 = numpy.sum(Th3)
sum.append(Th3)
x = threshold
y = numpy.array(sum)
ax = plt.gca()
plt.scatter(x, y)
plt.ticklabel_format(style='plain', axis='y')
ax = plt.gca()
ax.set_yticklabels(ax.get_yticks())
plt.show()
这给了我下面的输出:
正如你所看到的,是负偏移-50000000。
我想删除此使得轴线从0开始
任何帮助是极大的赞赏!
看起来你应该在这里使用科学记数法。另外,使用'ax.set_yticklabels(ax.get_yticks())'是一个可怕的想法,而且有些危险。如果您在该通话后平移/缩放/更改极限,则刻度标签将会出错。 – tacaswell 2015-02-09 17:11:53
请参阅http://stackoverflow.com/questions/14711655/how-to-prevent-numbers-being-changed-to-exponential-form-in-python-matplotlib-fi/14711866#14711866 – tacaswell 2015-02-09 17:12:10
那必须留在从我正在做的其他事情。它不在我的最终代码 – 2015-02-10 13:26:00