Диаграмма рассеяния на полярной оси

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

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

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

Введение

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

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

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

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

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


Skills Graph

%%%%{init: {'theme':'neutral'}}%%%% flowchart RL python(("Python")) -.-> python/DataScienceandMachineLearningGroup(["Data Science and Machine Learning"]) matplotlib(("Matplotlib")) -.-> matplotlib/BasicConceptsGroup(["Basic Concepts"]) python(("Python")) -.-> python/ModulesandPackagesGroup(["Modules and Packages"]) python(("Python")) -.-> python/PythonStandardLibraryGroup(["Python Standard Library"]) matplotlib(("Matplotlib")) -.-> matplotlib/PlottingDataGroup(["Plotting Data"]) python(("Python")) -.-> python/DataStructuresGroup(["Data Structures"]) matplotlib/BasicConceptsGroup -.-> matplotlib/importing_matplotlib("Importing Matplotlib") matplotlib/BasicConceptsGroup -.-> matplotlib/figures_axes("Understanding Figures and Axes") matplotlib/PlottingDataGroup -.-> matplotlib/scatter_plots("Scatter Plots") python/DataStructuresGroup -.-> python/tuples("Tuples") python/ModulesandPackagesGroup -.-> python/importing_modules("Importing Modules") python/ModulesandPackagesGroup -.-> python/standard_libraries("Common Standard Libraries") python/PythonStandardLibraryGroup -.-> python/math_random("Math and Random") python/DataScienceandMachineLearningGroup -.-> python/numerical_computing("Numerical Computing") python/DataScienceandMachineLearningGroup -.-> python/data_visualization("Data Visualization") subgraph Lab Skills matplotlib/importing_matplotlib -.-> lab-48875{{"Диаграмма рассеяния на полярной оси"}} matplotlib/figures_axes -.-> lab-48875{{"Диаграмма рассеяния на полярной оси"}} matplotlib/scatter_plots -.-> lab-48875{{"Диаграмма рассеяния на полярной оси"}} python/tuples -.-> lab-48875{{"Диаграмма рассеяния на полярной оси"}} python/importing_modules -.-> lab-48875{{"Диаграмма рассеяния на полярной оси"}} python/standard_libraries -.-> lab-48875{{"Диаграмма рассеяния на полярной оси"}} python/math_random -.-> lab-48875{{"Диаграмма рассеяния на полярной оси"}} python/numerical_computing -.-> lab-48875{{"Диаграмма рассеяния на полярной оси"}} python/data_visualization -.-> lab-48875{{"Диаграмма рассеяния на полярной оси"}} end

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

Для создания диаграммы рассеяния на полярной оси нам нужно импортировать библиотеки Matplotlib и NumPy. Также мы установим случайный种子 для воспроизводимости.

import matplotlib.pyplot as plt
import numpy as np

np.random.seed(19680801)

Генерируем случайные данные

Мы сгенерируем случайные данные для диаграммы рассеяния с использованием NumPy. Мы создадим 150 точек данных с случайными значениями радиуса и угла, и вычислим площадь и цвет каждой точки.

N = 150
r = 2 * np.random.rand(N)
theta = 2 * np.pi * np.random.rand(N)
area = 200 * r**2
colors = theta

Создаем диаграмму рассеяния на полярной оси

Мы создадим диаграмму рассеяния на полярной оси с использованием функции plt.scatter(). Мы установим параметр projection в 'polar' и передадим значения радиуса, угла, цвета и площади в качестве параметров.

fig = plt.figure()
ax = fig.add_subplot(projection='polar')
c = ax.scatter(theta, r, c=colors, s=area, cmap='hsv', alpha=0.75)

Создаем диаграмму рассеяния на полярной оси с сдвинутым началом координат

Мы можем создать диаграмму рассеяния на полярной оси с сдвинутым началом координат, установив методы set_rorigin() и set_theta_zero_location() объекта PolarAxes. Мы установим радиус начала координат в -2,5 и положение нуля угла в 'W' с сдвигом на 10.

fig = plt.figure()
ax = fig.add_subplot(projection='polar')
c = ax.scatter(theta, r, c=colors, s=area, cmap='hsv', alpha=0.75)

ax.set_rorigin(-2.5)
ax.set_theta_zero_location('W', offset=10)

Создаем диаграмму рассеяния на полярной оси, ограниченной сектором

Мы можем создать диаграмму рассеяния на полярной оси, ограниченной сектором, установив методы set_thetamin() и set_thetamax() объекта PolarAxes. Мы установим начальное и конечное ограничения угла в 45 и 135 соответственно.

fig = plt.figure()
ax = fig.add_subplot(projection='polar')
c = ax.scatter(theta, r, c=colors, s=area, cmap='hsv', alpha=0.75)

ax.set_thetamin(45)
ax.set_thetamax(135)

Резюме

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