SORU
26 EYLÜL 2012, ÇARŞAMBA


&Quot değiştirme;tik frekans" matplotlib x ya da y ekseninde?

Python veri araziler nasıl düzeltmek için çalışıyorum.

Demek

x = [0,5,9,10,15]

ve

y = [0,1,2,3,4]

Sonra yaparım:

matplotlib.pyplot.plot(x,y)
matplotlib.pyplot.show()

ve x' kene 5 aralıklarla çizilir. eksen Bir şekilde 1 aralıklarla gösteri yapmak için mi var?

CEVAP
26 EYLÜL 2012, ÇARŞAMBA


Açıkça plt.xticks ile işaretler kene için istediğiniz ayarlayabilirsiniz:

plt.xticks(np.arange(min(x), max(x) 1, 1.0))

Örneğin,

import numpy as np
import matplotlib.pyplot as plt

x = [0,5,9,10,15]
y = [0,1,2,3,4]
plt.plot(x,y)
plt.xticks(np.arange(min(x), max(x) 1, 1.0))
plt.show()

(np.arange min(x) max(x) in yerine yüzer durumda range Bu işlev sadece yerine Python kullanılmıştır.)


plt.plot (ya da ax.plot) fonksiyonu otomatik x y sınırları varsayılan ayarlar. Eğer bu sınırları devam et tik işaretlerinin stepsize değiştirmek istiyorsanız, o zaman ax.get_xlim() Matplotlib zaten ayarlanmış olduğunu bulmak için kullanabilirsiniz.

start, end = ax.get_xlim()
ax.xaxis.set_ticks(np.arange(start, end, stepsize))

Varsayılan kene biçimlendirici iyi bir iş önemli bir basamak makul bir sayıya kene değerleri yuvarlama yapmak gerekir. Eğer biçimi üzerinde daha fazla kontrol sahibi olmak istiyorsanız ancak, kendi biçimlendirici tanımlayabilirsiniz. Örneğin,

ax.xaxis.set_major_formatter(ticker.FormatStrFormatter('%0.1f'))

İşte çalıştırılabilir bir örnek:

import numpy as np
import matplotlib.pyplot as plt
import matplotlib.ticker as ticker

x = [0,5,9,10,15]
y = [0,1,2,3,4]
fig, ax = plt.subplots()
ax.plot(x,y)
start, end = ax.get_xlim()
ax.xaxis.set_ticks(np.arange(start, end, 0.712123))
ax.xaxis.set_major_formatter(ticker.FormatStrFormatter('%0.1f'))
plt.show()

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

YORUMLAR

SPONSOR VİDEO

Rastgele Yazarlar

  • HTC Tutorials

    HTC Tutorial

    21 EYLÜL 2010
  • Lamarr Wilson

    Lamarr Wilso

    27 Aralık 2008
  • Shaollin Animes

    Shaollin Ani

    19 HAZİRAN 2013