Jak děj log-log histogram v matplotlib

0

Otázka

Zajímalo by mě, jak se mají log-log graf pro vizualizaci četnosti prvků v seznamu, například:

my_list=[1,2,3,3,3,4,1,2,5,2,10,4,5,3,3,3,2,1]

Jsem vyneseny dat pomocí histogramu:

plt.hist(my_list, label='Frequency Distribution of matches')
plt.legend()
plt.ylabel('Frequency')

Ale bylo by lepší si to představit jako log-log.

matplotlib python
2021-11-23 22:07:00
1

Nejlepší odpověď

1

plt.hist zahrnuje log param, který se chová jako plt.yscale('log') od té doby je to jen stupnice osy y:

log: Pokud True, histogram osa bude nastaven na log měřítku.

Také rozsah x-osa, kombinovat to s plt.xscale('log'):

plt.hist(my_list, log=True)
plt.xscale('log')

Pokud chcete rovné-šířka bary, definovat bins jako 10 ** edges:

start, stop = np.log10(min(my_list)), np.log10(max(my_list))
bins = 10 ** np.linspace(start, stop, 10)

plt.hist(my_list, log=True, bins=bins)
ax.set_xscale('log')

Jak získat log-log line děj frekvence, použití plt.stairs (vyžaduje matplotlib 3.4+) s np.histogram:

plt.stairs(*np.histogram(my_list))
plt.yscale('log')
plt.xscale('log')

2021-11-24 00:57:46

děkuji, tdy. Bylo by možné na pozemku, místo toho, histogram, čáry děj pomocí log=True?
Math

@Math myslíš log-log line plot frekvencí? pokud ano, použijte plt.stairs (vyžaduje matplotlib 3.4+) s np.histogram (odpověď aktualizováno)
tdy

vidět stackoverflow.com/a/68201845/13138364 pro více informací o schodiště pozemky
tdy

V jiných jazycích

Tato stránka je v jiných jazycích

Русский
..................................................................................................................
Italiano
..................................................................................................................
Polski
..................................................................................................................
Română
..................................................................................................................
한국어
..................................................................................................................
हिन्दी
..................................................................................................................
Français
..................................................................................................................
Türk
..................................................................................................................
Português
..................................................................................................................
ไทย
..................................................................................................................
中文
..................................................................................................................
Español
..................................................................................................................
Slovenský
..................................................................................................................