2014-02-28 224 views
0

我在集羣上遠程運行腳本來生成散點圖。我希望保存這個圖,但是我不想讓這個圖顯示出來或者出現一個窗口(就像你執行plt.show())一樣。 我保存的地塊總是空的。這是我正在使用的代碼(下面)。任何提示都會非常有幫助。謝謝!空的python陰謀

fig = plt.figure() 

ax = fig.add_subplot(111) 
ax.set_xlim([-1,maxX+1])  
ax.set_ylim([0,maxY+1]) 

ax.set_xlabel('Comparison number (n)', fontsize=18, fontweight='bold') 
ax.set_ylabel('Normalized cross correlation score', fontsize=18, fontweight='bold') 

ax.scatter(xaxis,yaxis) 

plt.savefig('testfig.png') 
+1

什麼是'xaxis'和'yaxis'?沒有他們就很難診斷。 –

+0

以及'maxX'和'maxY'。 – sashkello

+0

xaxis和yaxis是兩個與數字數據大小相同的列表。例如x軸= [0,1,2,3,4,5],y軸= [ - 1.1,2.3,-4,50,3,0]。 maxX和maxY分別是max(xaxis)和max(yaxis0;即沿每個軸發生的最大值。 – Josh

回答

0

爲了使用避免顯示情節窗口(即做離屏渲染),你可能想使用一個不同的matplotlib後端。

任何matplotlibimport發言之前,加

import matplotlib 
matplotlib.use('Agg') 

和後續調用matplotlib不會顯示任何情節的窗口。

如果您的繪圖文件顯示空軸,那麼問題在於繪製參數,因爲使用空參數調用繪圖會創建空軸。