Matplotlib стиль 'серая градация'

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

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

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

Введение

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

Советы по использованию ВМ

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

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

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

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

Начнем с импорта необходимых библиотек. Нам понадобятся NumPy и Matplotlib.

import matplotlib.pyplot as plt
import numpy as np

Настройка случайного состояния

Для обеспечения воспроизводимости результатов мы настраиваем случайное состояние с использованием следующего кода:

np.random.seed(19680801)

Определение функции примера цикла цветов

Мы определяем функцию color_cycle_example, которая принимает объект оси в качестве входных данных и строит синусоидальную волну для каждого цвета в цикле цветов. Цикл цветов определяется параметрами rcParams.

def color_cycle_example(ax):
    L = 6
    x = np.linspace(0, L)
    ncolors = len(plt.rcParams['axes.prop_cycle'])
    shift = np.linspace(0, L, ncolors, endpoint=False)
    for s in shift:
        ax.plot(x, np.sin(x + s), 'o-')

Определение функции примера изображения и участка

Мы определяем функцию image_and_patch_example, которая принимает объект оси в качестве входных данных, отображает случайное изображение и добавляет участок на график.

def image_and_patch_example(ax):
    ax.imshow(np.random.random(size=(20, 20)), interpolation='none')
    c = plt.Circle((5, 5), radius=5, label='patch')
    ax.add_patch(c)

Использование стиля "серая градация"

Мы назначаем стиль "серая градация" с использованием следующего кода:

plt.style.use('grayscale')

Создание вложенных графиков

Мы создаем фигуру с двумя вложенными графиками с использованием следующего кода:

fig, (ax1, ax2) = plt.subplots(ncols=2)
fig.suptitle("'grayscale' style sheet")

Построение примеров

Мы строим пример цикла цветов на первом вложенном графике и пример изображения и участка на втором вложенном графике с использованием следующего кода:

color_cycle_example(ax1)
image_and_patch_example(ax2)

Отображение графика

Мы отображаем график с использованием следующего кода:

plt.show()

Резюме

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