Saya memiliki sosok matplotlib yang saya plot data yang selalu disebut sebagai nanodetik (1e-9). Pada sumbu y, jika saya memiliki data yang berukuran puluhan nanodetik, yaitu. 44e-9, nilai pada sumbu ditampilkan sebagai 4.4 dengan + 1e-8 sebagai offset. Apakah ada cara untuk memaksa sumbu menampilkan 44 dengan offset + 1e-9?
Hal yang sama berlaku untuk sumbu x saya di mana sumbu menunjukkan + 5.54478e4, di mana saya lebih suka menampilkan offset +55447 (bilangan bulat, bukan desimal - nilainya di sini dalam hitungan hari).
Saya sudah mencoba beberapa hal seperti ini:
p = axes.plot(x,y)
p.ticklabel_format(style='plain')
untuk sumbu x, tetapi ini tidak berhasil, meskipun saya mungkin menggunakannya dengan tidak benar atau salah menafsirkan sesuatu dari dokumen, dapatkah seseorang mengarahkan saya ke arah yang benar?
Terima kasih, Jonathan
Saya mencoba melakukan sesuatu dengan pemformat tetapi belum menemukan solusi apa pun ...:
myyfmt = ScalarFormatter(useOffset=True)
myyfmt._set_offset(1e9)
axes.get_yaxis().set_major_formatter(myyfmt)
dan
myxfmt = ScalarFormatter(useOffset=True)
myxfmt.set_portlimits((-9,5))
axes.get_xaxis().set_major_formatter(myxfmt)
Di samping catatan, saya sebenarnya bingung di mana sebenarnya objek 'nomor offset' berada ... apakah itu bagian dari tanda centang mayor / minor?
set_units
? matplotlib.sourceforge.net/api/… (Saya tidak dapat mencobanya karena saya tidak memiliki matplotlib di sini.)