Utknąłem na czymś, co powinno być względnie łatwe. Poniższy kod jest próbką opartą na większym projekcie, nad którym pracuję. Nie widziałem powodu, aby publikować wszystkie szczegóły, więc proszę przyjąć struktury danych, które przynoszę.Dodawanie etykiet wartości na wykresie słupkowym matplotlib
Zasadniczo tworzę wykres słupkowy i mogę po prostu dowiedzieć się, jak dodawać etykiety wartości na słupkach (na środku paska lub tuż nad nim). Szukałem próbek w Internecie, ale bezskutecznie wdrażałem własny kod. Uważam, że rozwiązaniem jest albo "tekst", albo "adnotacja", ale ja: a) nie wiem, którego użyć (i ogólnie mówiąc, nie wiem, kiedy go użyć). b) nie widać, aby wyświetlić etykiety wartości. Doceniam twoją pomoc, mój kod poniżej. Z góry dziękuję!
import numpy as np
import pandas as pd
import matplotlib.pyplot as plt
pd.set_option('display.mpl_style', 'default')
%matplotlib inline
frequencies = [6, 16, 75, 160, 244, 260, 145, 73, 16, 4, 1] # bring some raw data
freq_series = pd.Series.from_array(frequencies) # in my original code I create a series and run on that, so for consistency I create a series from the list.
x_labels = [108300.0, 110540.0, 112780.0, 115020.0, 117260.0, 119500.0, 121740.0, 123980.0, 126220.0, 128460.0, 130700.0]
# now to plot the figure...
plt.figure(figsize=(12, 8))
fig = freq_series.plot(kind='bar')
fig.set_title("Amount Frequency")
fig.set_xlabel("Amount ($)")
fig.set_ylabel("Frequency")
fig.set_xticklabels(x_labels)
Matplotlib ma wersję demo: https://matplotlib.org/examples/api/barchart_demo.html – Dan