НачатьНачать бесплатно

Аннотации со стрелками

Представьте, что вы городской планировщик в Лонг-Бич, Калифорния. Лонг-Бич расположен на берегу Тихого океана и каждый год в канун Нового года устраивает масштабное фейерверк-шоу. Вы хотите выяснить, не влияет ли это шоу негативно на качество воздуха в городе. Для этого вы рассмотрите уровни CO и NO2 в первый день Нового года. Оказывается, что Новый год не является выбросом на графике справа — соответствующая точка находится в одной из более плотных областей.

Чтобы помочь читателю найти эту точку, вы добавите аннотацию со стрелкой, указывающей на значение для Нового года. Это позволит разместить поясняющий текст в менее загруженной части графика и чётко обозначить, что именно видит читатель.

Это упражнение является частью курса

Улучшение визуализации данных в Python

Посмотреть курс

Инструкции к упражнению

  • Получите строку из jan_pollution, соответствующую 1 января 2012 года в городе Лонг-Бич, используя метод .query() библиотеки pandas.
  • Задайте конечную точку стрелки (xy), используя значения столбцов CO и NO2 из DataFrame lb_newyears.
  • С помощью аргумента xytext разместите текст аннотации в левом нижнем углу графика: x = 2, y = 15.
  • Установите параметр 'shrink' для стрелки равным 0.03, чтобы она не перекрывала точку интереса.

Интерактивное практическое упражнение

Попробуйте выполнить это упражнение, дополнив этот пример кода.

# Query and filter to New Years in Long Beach
jan_pollution = pollution.query("(month  ==  1) & (year  ==  2012)")
lb_newyears = jan_pollution.query("(____  ==  ____) & (____  ==  '____')")

sns.scatterplot(x = 'CO', y = 'NO2',
                data = jan_pollution)

# Point arrow to lb_newyears & place text in lower left 
plt.annotate('Long Beach New Years',
             xy = (____, ____),
             xytext = (____, _____), 
             # Shrink the arrow to avoid occlusion
             arrowprops = {'facecolor':'gray', 'width': 3, '____': ____},
             backgroundcolor = 'white')
plt.show()
Редактировать и запускать код