Bir matplotlib altplot ortamında formatı iki ondalık sayıya ayarlamaya çalışıyorum. Ne yazık ki, bu görevi nasıl çözeceğine dair hiçbir fikrim yok.Matplotlib: Kene etiketleri için yüzer biçimini belirt
Y ekseninde bilimsel gösterim kullanılmasını önlemek için, aşağıdaki snippet'imde gördüğünüz gibi ScalarFormatter(useOffset=False)
kullandım. Sanırım görevim, kullanılan biçimlendiriciye daha fazla seçenek/argüman ileterek çözülmelidir. Ancak, matplotlib belgelerinde hiçbir ipucu bulamadım.
İki ondalık haneyi nasıl ayarlayabilirim (hiçbiri gerekmiyor)? Maalesef örnek verileri sağlayamıyorum.
- SNIPPET -
f, axarr = plt.subplots(3, sharex=True)
data = conv_air
x = range(0, len(data))
axarr[0].scatter(x, data)
axarr[0].set_ylabel('$T_\mathrm{air,2,2}$', size=FONT_SIZE)
axarr[0].yaxis.set_major_locator(MaxNLocator(5))
axarr[0].yaxis.set_major_formatter(ScalarFormatter(useOffset=False))
axarr[0].tick_params(direction='out', labelsize=FONT_SIZE)
axarr[0].grid(which='major', alpha=0.5)
axarr[0].grid(which='minor', alpha=0.2)
data = conv_dryer
x = range(0, len(data))
axarr[1].scatter(x, data)
axarr[1].set_ylabel('$T_\mathrm{dryer,2,2}$', size=FONT_SIZE)
axarr[1].yaxis.set_major_locator(MaxNLocator(5))
axarr[1].yaxis.set_major_formatter(ScalarFormatter(useOffset=False))
axarr[1].tick_params(direction='out', labelsize=FONT_SIZE)
axarr[1].grid(which='major', alpha=0.5)
axarr[1].grid(which='minor', alpha=0.2)
data = conv_lambda
x = range(0, len(data))
axarr[2].scatter(x, data)
axarr[2].set_xlabel('Iterationsschritte', size=FONT_SIZE)
axarr[2].xaxis.set_major_locator(MaxNLocator(integer=True))
axarr[2].set_ylabel('$\lambda$', size=FONT_SIZE)
axarr[2].yaxis.set_major_formatter(ScalarFormatter(useOffset=False))
axarr[2].yaxis.set_major_locator(MaxNLocator(5))
axarr[2].tick_params(direction='out', labelsize=FONT_SIZE)
axarr[2].grid(which='major', alpha=0.5)
axarr[2].grid(which='minor', alpha=0.2)
Not görme: (yeni '.format kullanmayı tercih ediyorsanız) 'belirtilen adreste belirtilen StrMethodFormatter' stil stil belirteçleri e] (http://matplotlib.org/api/ticker_api.html#matplotlib.ticker.StrMethodFormatter) – mangecoeur
'imshow' ile çizim yapıyorum ve bu benim için çalışmıyor. Ayrıca [bu yanıt] 'dan plt.gca(). Yaxis.set_major_formatter (FormatStrFormatter ('%. G ')) 'yi de denedim (https://stackoverflow.com/questions/42929550/ticks-format-of- bir eksen-in-matplotlib) ama boşuna. Herhangi bir fikir? – airdas
@airdas Bir sorunla karşılaşırsanız, lütfen bu konuyla ilgili yeni bir soru sorun, tüm ayrıntıları ve sorunun cevabını verin. – ImportanceOfBeingErnest