Соотношение сторон осей

MatplotlibMatplotlibBeginner
Практиковаться сейчас

This tutorial is from open-source community. Access the source code

💡 Этот учебник переведен с английского с помощью ИИ. Чтобы просмотреть оригинал, вы можете перейти на английский оригинал

Введение

В визуализации данных важно представлять информацию точным и визуально привлекательным способом. Одним из способов достичь этого является установка одинаковых соотношений сторон осей на графиках. Это гарантирует, что оси x и y масштабируются одинаково, что приводит к пропорциональному представлению данных. В этом руководстве мы узнаем, как настраивать и настраивать графики с одинаковыми соотношениями сторон осей с использованием библиотеки Matplotlib для Python.

Советы по работе с ВМ

После завершения запуска ВМ нажмите в левом верхнем углу, чтобы переключиться на вкладку Notebook, чтобы получить доступ к Jupyter Notebook для практики.

Иногда вам может потребоваться подождать несколько секунд, пока Jupyter Notebook не загрузится. Валидация операций не может быть автоматизирована из-за ограничений в Jupyter Notebook.

Если вы сталкиваетесь с проблемами во время обучения, не стесняйтесь обращаться к Labby. Оставьте отзыв после занятия, и мы оперативно решим проблему для вас.

Импортируем необходимые библиотеки

Начнем с импорта необходимых библиотек для этого руководства. Будем использовать библиотеку Matplotlib для создания графиков и библиотеку NumPy для генерации данных.

import matplotlib.pyplot as plt
import numpy as np

Построим круг с неравномерным соотношением сторон осей

Сначала построим круг с неравномерным соотношением сторон осей, чтобы продемонстрировать важность установки равных соотношений сторон осей.

an = np.linspace(0, 2 * np.pi, 100)
fig, axs = plt.subplots(2, 2)

axs[0, 0].plot(3 * np.cos(an), 3 * np.sin(an))
axs[0, 0].set_title('not equal, looks like ellipse', fontsize=10)

В результирующем графике будет показан круг, который выглядит удлиненным из-за неравномерного соотношения сторон осей.

Построим круг с равным соотношением сторон осей

Для установки равного соотношения сторон осей мы можем использовать функцию axis('equal').

axs[0, 1].plot(3 * np.cos(an), 3 * np.sin(an))
axs[0, 1].axis('equal')
axs[0, 1].set_title('equal, looks like circle', fontsize=10)

В результирующем графике будет показан круг, который пропорционален и визуально привлекателен.

Изменяем пределы графика, сохраняя равное соотношение сторон осей

Мы также можем изменить пределы графика, сохраняя равное соотношение сторон осей.

axs[1, 0].plot(3 * np.cos(an), 3 * np.sin(an))
axs[1, 0].axis('equal')
axs[1, 0].set(xlim=(-3, 3), ylim=(-3, 3))
axs[1, 0].set_title('still a circle, even after changing limits', fontsize=10)

В результирующем графике будет показан круг, который по-прежнему пропорционален, даже после изменения лимитов.

Автоматически настраивать пределы данных для равного соотношения сторон осей

Мы также можем использовать функцию set_aspect('equal', 'box'), чтобы автоматически настроить пределы данных для равного соотношения сторон осей.

axs[1, 1].plot(3 * np.cos(an), 3 * np.sin(an))
axs[1, 1].set_aspect('equal', 'box')
axs[1, 1].set_title('still a circle, auto-adjusted data limits', fontsize=10)

В результирующем графике будет показан круг, который по-прежнему пропорционален и визуально привлекателен.

Резюме

В этом уроке мы узнали, как настраивать и настраивать графики с равным соотношением сторон осей с использованием библиотеки Matplotlib для Python. Задав равное соотношение сторон осей, мы можем убедиться, что наши графики пропорциональны и визуально привлекательны, что делает их легче интерпретировать.