2014-02-24 56 views
0

我想以此爲榜樣,使插曲網格:matplotlib插曲網格創建兩個不同的畫布,而不是一個

http://matplotlib.org/examples/pylab_examples/line_styles.html

,但我的代碼的關係圖的兩排在兩個不同的拉票而不是在一個畫布上(圖像是正確的)。有誰明白爲什麼?

這是我的代碼的摘錄:

alphas = [45, 75] 
numalp = len(alphas) 

angles = np.linspace(pi/12, pi/2, num=10) 
numobs = len(angles) 

axisNum = 0 

for a in alphas: 

      #[some operations] 

      for obsangl in angles: 

         #[some operations] 

         axisNum += 1 
         axii = plt.subplot(numalp, numobs, axisNum) 
         plt.errorbar(g, Pgamma, yerr = ePgamma, color = 'green', fmt = '.')     
         axii1 = axii.twinx()     
         plt.plot(g, lightcurva, 'b-') 
         axii.set_yticklabels([]) 
         axii.set_xticklabels([])     
         axii1.set_yticklabels([]) 
         axii1.set_xticklabels([]) 

回答

0

你有在for a in alphas環路plt.figure()? (在你的#[some operations]中)如果是這樣,那麼每次你打電話給你,你會得到一個新的數字,除非你指定一個數字。例如,下面將創建兩個人物,每一個行:

for a in alphas: 
    fig=plt.figure() 
    for obsangl in angles: 
     # etc. 

如果是這種情況,那麼改正它,你可以將所有循環之前定義的數字:

fig=plt.figure() 
for a in alphas: 
    for obsang1 in angles: 
     # etc. 

或者你可以指定一個數字:

for a in alphas: 
    fig=plt.figure(1) # Specifies Figure 1 
    for obsangl in angles: 
     # etc. 
相關問題