2015-02-06 198 views
1

我想知道是否有一种实际的方法来用matplotlib改变轴的刻度。更确切地说,小数字的规模较大,大数量的规模较小。 我有下面的代码片断:用Matplotlib改变X轴的刻度

x = [0,15,546,6076,10694,12000] 
x = [float(y)/100 for y in x] 
y = [0,0,1,2,3,4] 
plt.step(x, y) 

plt.xlim([0, 150]) 
plt.ylim([0,10])  
plt.xticks(x,rotation='vertical') 
plt.yticks(y) 

plt.show() 

并将所得图形如下: enter image description here

基本上,0和0.1标签重叠,所以我想对于小数目和较小规模更大的规模为大数目。

非常感谢您的帮助!

干杯, 乔瓦尼

回答

2

你可能要考虑使用对数刻度您的图形。它可能会解决你的问题。 plt.show()

plt.yscale('log') 
plt.xscale('log') 

到您的代码:您可以通过添加做到这一点