2017-04-30 97 views
1

我正在嘗試使用pyplot來進行線性建模,並且我遇到了一個問題。當我繪製數據圖時,pyplot希望沿着X和Y軸放置小數百分比。我嘗試了一些不同的東西讓它消失。我想保留一些刻度標籤,所以我嘗試了添加我自己的刻度標籤的各種方法,但是這種方法很有效,但它仍然在頂部打印它自己的刻度標籤。Pyplot不會停止顯示X和Y軸的十進制百分比

所以在原點上它說0.0,然後沿着軸的五分之一它說0.2,直到它的軸結束它說1.0。問題的

示例圖片: Example image of the problem

fig = plt.figure(figsize = (10,10)) 
big_plot = fig.add_subplot(111) 
data_plot = fig.add_subplot(211) 
residual_plot = fig.add_subplot(212) 
data_plot.plot(x,y,'ro') 
data_plot.errorbar(x,model,sigma) 
residual_plot.plot(x,residuals,'b*') 
data_plot.set_title("Data") 
data_plot.set_ylabel(y_label) 
residual_plot.set_title("Residuals") 
residual_plot.set_ylabel("Residual Value") 
big_plot.set_xlabel(x_label) 
plt.show() 

有誰知道如何才能徹底清除這些刻度標記,並添加自己的?謝謝。

+2

完全擺脫'big_plot'。這是一個空的圖,它創建了你不想要的軸標籤。在'data_plot'上設置xlabel來標記軸。 – Craig

回答

1

在你的情況下,你正在創建三個圖,但只繪製其中兩個的數據。 big_plot軸是使用默認的刻度線繪製的,它是您不需要的額外刻度線標記的來源。

取而代之,只需刪除此軸並將標籤分配給data_plot即可標記底部x軸。

fig = plt.figure(figsize = (10,10)) 
data_plot = fig.add_subplot(211) 
residual_plot = fig.add_subplot(212) 
data_plot.plot(x,y,'ro') 
data_plot.errorbar(x,model,sigma) 
residual_plot.plot(x,residuals,'b*') 
data_plot.set_title("Data") 
data_plot.set_ylabel(y_label) 
residual_plot.set_title("Residuals") 
residual_plot.set_ylabel("Residual Value") 
data_plot.set_xlabel(x_label) 
plt.show()