2016-02-27 83 views
0

我有以下代碼:重塑pyplot插曲

def plot_yz_over_x_elementwise(zarray): 
    for i in range(zarray.shape[1]): 
     for j in range(zarray.shape[2]): 
      plt.subplot2grid((zarray.shape[1],zarray.shape[2]),(i,j)) 
      plt.plot(zarray[:,i,j]) 
      frame = plt.gca() 
      frame.axes.get_xaxis().set_ticks([]) 
      frame.axes.get_yaxis().set_ticks([1,0.5,0]) 

這需要一個三維NP陣列並繪製它在這樣的圖:

enter image description here

其被嵌入在IPython的筆記本。我需要的是某種方式來格式化這個圖表,以便軸標籤不在彼此之上。我想這意味着要麼將其展開在筆記本上......要麼在python的每個單元格中縮小它。我該如何做一個或另一個讓這個陰謀看起來正確?

回答

2

tight_layout可能是你在找什麼

def plot_yz_over_x_elementwise(zarray): 
    for i in range(zarray.shape[1]): 
     for j in range(zarray.shape[2]): 
      plt.subplot2grid((zarray.shape[1],zarray.shape[2]),(i,j)) 
      plt.plot(zarray[:,i,j]) 
      frame = plt.gca() 
      frame.axes.get_xaxis().set_ticks([]) 
      frame.axes.get_yaxis().set_ticks([1,0.5,0]) 
    plt.tight_layout() 
0

很肯定這本question

底線的重複的答案是使用plt.tight_layout

+0

嘿,有美德就具有替代搜索標題。我絕對找到了這個,並沒有發現任何東西。據推測,如果我是專家,我會找到這些鏈接......但如果我是專家,我不會有任何問題。換句話說,感謝您指出這一點...但我從來沒有找到這些搜索線。 – bordeo