Совместное использование графиков в Matplotlib

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

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

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

Введение

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

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

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

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

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


Skills Graph

%%%%{init: {'theme':'neutral'}}%%%% flowchart RL python(("Python")) -.-> python/DataStructuresGroup(["Data Structures"]) matplotlib(("Matplotlib")) -.-> matplotlib/AdvancedPlottingGroup(["Advanced Plotting"]) python(("Python")) -.-> python/ModulesandPackagesGroup(["Modules and Packages"]) python(("Python")) -.-> python/DataScienceandMachineLearningGroup(["Data Science and Machine Learning"]) matplotlib(("Matplotlib")) -.-> matplotlib/BasicConceptsGroup(["Basic Concepts"]) matplotlib(("Matplotlib")) -.-> matplotlib/PlottingDataGroup(["Plotting Data"]) matplotlib/BasicConceptsGroup -.-> matplotlib/importing_matplotlib("Importing Matplotlib") matplotlib/BasicConceptsGroup -.-> matplotlib/figures_axes("Understanding Figures and Axes") matplotlib/PlottingDataGroup -.-> matplotlib/line_plots("Line Plots") python/DataStructuresGroup -.-> python/tuples("Tuples") matplotlib/AdvancedPlottingGroup -.-> matplotlib/subplots("Subplots") python/ModulesandPackagesGroup -.-> python/importing_modules("Importing Modules") python/DataScienceandMachineLearningGroup -.-> python/numerical_computing("Numerical Computing") python/DataScienceandMachineLearningGroup -.-> python/data_visualization("Data Visualization") subgraph Lab Skills matplotlib/importing_matplotlib -.-> lab-48925{{"Совместное использование графиков в Matplotlib"}} matplotlib/figures_axes -.-> lab-48925{{"Совместное использование графиков в Matplotlib"}} matplotlib/line_plots -.-> lab-48925{{"Совместное использование графиков в Matplotlib"}} python/tuples -.-> lab-48925{{"Совместное использование графиков в Matplotlib"}} matplotlib/subplots -.-> lab-48925{{"Совместное использование графиков в Matplotlib"}} python/importing_modules -.-> lab-48925{{"Совместное использование графиков в Matplotlib"}} python/numerical_computing -.-> lab-48925{{"Совместное использование графиков в Matplotlib"}} python/data_visualization -.-> lab-48925{{"Совместное использование графиков в Matplotlib"}} end

Импортировать необходимые библиотеки

Первым шагом является импорт необходимых библиотек. В этом примере мы будем использовать numpy и matplotlib.

import matplotlib.pyplot as plt
import numpy as np

Создать данные

Далее, нам нужно создать некоторые данные для построения графика. В этом примере мы создадим два набора данных: sin(2*pi*t) и sin(4*pi*t).

t = np.arange(0, 10, 0.01)

Создать первый график

Теперь создадим первый график с использованием subplot. subplot принимает три аргумента: количество строк, количество столбцов и номер графика. В этом примере мы создадим график с 2 строками и 1 столбцом (211), что означает, что первый график будет в верхней строке.

ax1 = plt.subplot(211)
ax1.plot(t, np.sin(2*np.pi*t))

Создать второй график

Далее мы создадим второй график. Мы снова используем subplot, но на этот раз мы установим атрибут sharex для первого графика (ax1). Это гарантирует, что второй график будет иметь ту же ось X, что и первый график.

ax2 = plt.subplot(212, sharex=ax1)
ax2.plot(t, np.sin(4*np.pi*t))

Показать графики

Наконец, мы можем показать графики с использованием plt.show().

plt.show()

Резюме

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