Построение нескольких слоёв
Ещё одна типичная возможность pandas — фильтрация датафрейма: выбор подмножества строк на основе условия (которое формирует булеву маску).
В этом упражнении мы выберем подмножество всех африканских ресторанов, а затем построим многослойный график. В таком графике визуализация нескольких GeoDataFrame объединяется на одной фигуре. Чтобы добавить слой, можно передать объект matplotlib axes в ключевое слово ax метода plot() объекта GeoDataFrame.
Данные о ресторанах уже загружены в GeoDataFrame restaurants. GeoPandas импортирован как geopandas, а matplotlib.pyplot — как plt.
Это упражнение является частью курса
Работа с геопространственными данными в Python
Инструкции к упражнению
- Выберите подмножество всех строк, в которых значение
typeравно 'African restaurant'. Назовите это подмножествоafrican_restaurants. - Постройте график для всех ресторанов, используя единый серый цвет. Не забудьте передать объект matplotlib axes в метод
plot(). - Добавьте второй слой — только африканские рестораны — красным цветом. Для стандартных цветов можно использовать их названия на английском: 'red' и 'grey'.
- Удалите рамку с помощью метода
set_axis_off(), вызванного на объекте matplotlib axes.
Интерактивное практическое упражнение
Попробуйте выполнить это упражнение, дополнив этот пример кода.
# Load the restaurants dataset
restaurants = geopandas.read_file("paris_restaurants.geosjon")
# Take a subset of the African restaurants
african_restaurants = ____
# Make a multi-layered plot
fig, ax = plt.subplots(figsize=(10, 10))
restaurants.____
african_restaurants.____
# Remove the box, ticks and labels
ax.____
plt.show()