我的X軸標籤pyplot去除零位(從0開始並不0.00)
0.00 0.01 0.02 0.03
等 我怎樣才能格式化爲:
0 0.01 0.02 0.03
好,我想這些:
plt.xlim([0,0.03])
plt.xticks(np.arange(0, 0.03, 0.01))
既沒有工作。我認爲這應該是固定的,0.00是沒有意義的。
我的X軸標籤pyplot去除零位(從0開始並不0.00)
0.00 0.01 0.02 0.03
等 我怎樣才能格式化爲:
0 0.01 0.02 0.03
好,我想這些:
plt.xlim([0,0.03])
plt.xticks(np.arange(0, 0.03, 0.01))
既沒有工作。我認爲這應該是固定的,0.00是沒有意義的。
您用過plt.yticks([0, 0.01, 0.02, 0.03], ['0', '0.01', '0.0.2', '0.03'])
?
要更改某個刻度,你既可以使用自定義格式,或類似如下:
import matplotlib.pyplot as plt
plt.plot([1,3,2])
plt.draw() # Note, this line is important
ax = plt.gca() # and you don't need this line if you already have an axis handle somewhere
labels = [l.get_text() for l in ax.get_xticklabels()]
labels[0] = '0'
ax.set_xticklabels(labels)
plt.show()
你可以使用你的X軸自定義格式,打印整數這樣:
from matplotlib.ticker import FuncFormatter
def my_formatter(x, pos):
if x.is_integer():
return str(int(x))
else:
return str(x)
formatter = FuncFormatter(my_formatter)
fig, ax = plt.subplots()
ax.xaxis.set_major_formatter(formatter)
plt.show()
我想你會發現*很多*的誰與'0.00'沒有意義不同意的人。這當然不是一個應該修復的錯誤。 – jedwards 2015-03-19 08:21:48
@jedwards當然,我尊重這一觀點。但是我懷疑任何數學家會捍衛0.00。而且MATLAB和gnuplot總是把它作爲0。 – 2015-03-19 08:25:33