Python Matplotlib – как аннотировать значения оси Y только на линейном графике?

Я построил два линейных графика на одном графике, представляющие данные о прибытии судов за 2019 и 2020 годы.

Для каждого линейного графика
Ось Y представляет количество прибывающих судов.
Ось X представляет месяц (март, апрель, май и т. д.).

Однако я не знаю, как сделать так, чтобы значения по оси Y (номера прибытия судов) отображались на обоих линейных графиках.

Кто-нибудь знает, как?

Мой код и линейные графики представлены ниже:

# Trendline comparison of the total number of vessel arrivals in 2019 & 2020

# Displaying all numbers to 0 decimal places
pd.options.display.float_format = "{:,.0f}".format

VESSEL_ARRIVALS_2019 = MARITIME_DATASET_2019["VESSEL ARRIVAL NUMBERS"]
VESSEL_ARRIVALS_2020 = MARITIME_DATASET_2020["VESSEL ARRIVAL NUMBERS"]

# Displaying the plotted figure
fig = plt.figure(figsize = (48, 20))
plt.xticks(fontsize = 20)
plt.yticks(fontsize = 20)
plt.plot(LIST_OF_MONTHS, VESSEL_ARRIVALS_2019, color = "blue", linewidth = 3,  label = "2019 NUMBER OF VESSEL ARRIVALS")
plt.plot(LIST_OF_MONTHS, VESSEL_ARRIVALS_2020, color = "red", linewidth = 3,  label = "2020 NUMBER OF VESSEL ARRIVALS")
plt.title("TOTAL NUMBER OF VESSEL ARRIVALS 2020 ON 2019 COMPARISON", fontsize = 32)
plt.legend(loc = "best", prop = {"size": 26})
plt.show()

введите здесь описание изображения


person TropicalMagic    schedule 25.10.2020    source источник


Ответы (1)


Используйте функцию annotate. . Например, вот так.

offset = 100 # adjust so it looks nice, but isn't on your line
for x, y in zip(LIST_OF_MONTHS, VESSEL_ARRIVALS_2019):
  plt.annotate(y, (x,y+offset))
person Marko    schedule 25.10.2020