SORU
1 ŞUBAT 2010, PAZARTESİ


Gizleme matplotlib araziler metin eksen

Eksen de tickmarks veya numaraları (geleneksel anlamda balta kullanıyorum, matplotlib isimlendirme değil!) olmayan bir şekil çizmek için çalışıyorum. İş yerinde bir sorun matplotlib değer bir N çıkararak(y)x ticklabels ayarlar, sonra da ekler ekseni sonunda N.

Bu belirsiz olabilir, ama aşağıdaki basit örnek sorun vurgular, '6.18' N: sorunlu değeri olmak

import matplotlib.pyplot as plt
import random
prefix = 6.18

rx = [prefix (0.001*random.random()) for i in arange(100)]
ry = [prefix (0.001*random.random()) for i in arange(100)]
plt.plot(rx,ry,'ko')

frame1 = plt.gca()
for xlabel_i in frame1.axes.get_xticklabels():
    xlabel_i.set_visible(False)
    xlabel_i.set_fontsize(0.0)
for xlabel_i in frame1.axes.get_yticklabels():
    xlabel_i.set_fontsize(0.0)
    xlabel_i.set_visible(False)
for tick in frame1.axes.get_xticklines():
    tick.set_visible(False)
for tick in frame1.axes.get_yticklines():
    tick.set_visible(False)

plt.show()

Öğrenmek istediğim üç şey var:

  1. Nasıl bu davranışı (çoğu durumda yararlı olsa da, her zaman değil!) kapatmak için matplotlib.axis.XAxis aradım ve uygun bir şey bulamıyor

  2. Nasıl N (yani X.set_visible(False)) görünmez yapabilirim

  3. Daha iyi bir yol yapılacağı yukarıda zaten var mı? Benim son komplo varsa bunu uygun bir şekilde 4x4 subplots olurdu.

CEVAP
1 ŞUBAT 2010, PAZARTESİ


Her öğe saklamak yerine, tüm eksen gizleyebilirsiniz:

frame1.axes.get_xaxis().set_visible(False)
frame1.axes.get_yaxis().set_visible(False)

Ya da, boş bir liste için kene ayarlayabilirsiniz:

frame1.axes.get_xaxis().set_ticks([])
frame1.axes.get_yaxis().set_ticks([])

Bu ikinci seçenek, hala plt.xlabel() plt.ylabel() eksen etiket eklemek için kullanabilirsiniz.

Bunu Paylaş:
  • Google+
  • E-Posta
Etiketler:

YORUMLAR

SPONSOR VİDEO

Rastgele Yazarlar

  • Liam Underwood

    Liam Underwo

    19 Mayıs 2009
  • The Dubstep FX

    The Dubstep

    5 Mart 2011
  • Watcher3223

    Watcher3223

    15 Kasım 2007