2013-07-22 19 views
8

I-Python Defterinde çizim yapmak için Panda'ları kullanıyorum, birkaç çizimim var ve Matplotlib, Y eksenine onları farklı şekilde belirlediğinden ve bu verileri aynı aralıkta karşılaştırmamız gerekiyor. Üzerinde çeşitli varyantları denedim: (Ben her arsa için limitleri uygulamanız gerekeceğini varsayalım .. ama bir çalışma alamıyorum çünkü ... Matplotlib belgesinden, ylim ayarlamam gerekiyor gibi görünüyor, ama) (. bunu yapmak içinPandalar kullanarak Matplotlib'de Yaxis Ayarı

df2250.plot(); plt.ylim((100000,500000)) <<<< if I insert the ; I get int not callable and if I leave it out I get invalid syntax. anyhow, neither is right... 
df2260.plot() 
df5.plot() 

cevap

23

Pandalar arsa sözdizimi anlamaya eksenleri döner olamaz, üzerinde İlim ayarlamak için kullanabilirsiniz.

ax1 = df2250.plot() 
ax2 = df2260.plot() 
ax3 = df5.plot() 

ax1.set_ylim(100000,500000) 
ax2.set_ylim(100000,500000) 
etc... 

Ayrıca bir eksenlerini geçebilir Pandalar çizimi, aynı eksende çizmek, şu şekilde yapılabilir:

ax1 = df2250.plot() 
df2260.plot(ax=ax1) 
etc... 
Eğer farklı araziler çok, size en çok kontrol sağlayan bir çözüm olabilir forehand üzerinde ve bir şekil içindeki eksenlerini tanımlayan istiyorsanız

:

fig, axs = plt.subplots(1,3,figsize=(10,4), subplot_kw={'ylim': (100000,500000)}) 

df2260.plot(ax=axs[0]) 
df2260.plot(ax=axs[1]) 
etc... 
+0

Mükemmel, çok teşekkür ederiz! – dartdog

+1

Ayrıca 'sharey = True'' 'plt.subplots' öğesine de ekleyebilirsiniz. Ardından, belirli bir alt platforma zum yaptığınızda bile y sınırları aynı kalır. – esmit

+0

Gerçekten, iyi nokta! –