Автор оригинала: Team Python Pool.
Matplotlib Аннотировать Объяснено с примерами
Привет гики и добро пожаловать в этой статье мы рассмотрим Matplotlib Annotate. Наряду с этим, для общего лучшего понимания, мы также рассмотрим его синтаксис и параметр. Затем мы увидим применение всей теоретической части на нескольких примерах.
Во-первых, давайте попробуем развить краткое понимание Matplotlib Annotate. Но перед этим я дам вам обзор библиотеки Matplotlib. Это библиотека построения графиков Python и расширение библиотеки NumPy. С помощью этой библиотеки мы строим различные графики, оправдывающие наши программы. Это очень удобно, когда речь идет о написании программ для науки о данных.
Теперь вернемся к нашей функции Matplotlib Annotate. Итак, в общем случае термин аннотировать означает помечать что-то. Предположим, что вы рисуете характеристический график VI в этом случае, вы помечаете ось x как V(напряжение) и ось y как I(ток). Аналогично, эта функция помогает нам помечать графики, сгенерированные с помощью matplotlib. Это станет более ясным, когда мы обсудим несколько примеров. Но перед этим, в следующем разделе, мы рассмотрим его синтаксис.
Синтаксис
matplotlib.pyplot.annotate
()
Это общий синтаксис нашей функции. С ним связано несколько параметров, которые мы рассмотрим в следующем разделе.
ПАРАМЕТР
1. текст
Этот параметр представляет текст, который мы хотим аннотировать.
2. xy
Этот параметр представляет точки X и Y для аннотирования.
<сильный>3. XYText
Необязательный параметр представляет позицию, в которую должен быть помещен текст вдоль X и Y.
<сильный>4. XYCOORDS
Этот параметр содержит строковое значение.
<сильный>5. ARROWPROPS
Этот параметр также является необязательным значением и содержит тип “duct”. По умолчанию это none.
ПРИМЕРЫ
Как мы уже сделали со всей теоретической частью, связанной с аннотацией Matplotlib. В этом разделе мы рассмотрим, как работает эта функция и как она помогает нам достичь желаемого результата. Мы начнем с примера элементарного уровня и постепенно перейдем к более сложным примерам.
1. Синусоидальная форма волны
import matplotlib.pyplot as plt import numpy as pp fig,.subplots() .arange(0.0, 1.0, 0.001).sin(2 * pp.pi * t).plot(t, s,) ppool.annotate('Peak Value', xy=(.25, 1), xytext=(1,, ,) ppool.set_ylim(-1.5, 1.5) plt.show()
Выше мы можем увидеть самый первый пример для нашей функции. Здесь наша цель – напечатать синусоидальную форму сигнала. Для этого мы сначала импортировали библиотеку NumPy и matplotlib. Затем, после чего мы использовали функцию аранжа Numpy. Так что же он делает, что функция автоматически генерирует значение между заданным диапазоном. После чего мы использовали синусоидальную функцию 2*pi*t. После чего следует наша часть аннотации. Здесь XY-это точка, которую должна отметить стрелка. Кроме того, у нас есть arrowprops, которые содержат все данные о том, как выглядит стрелка. Мы также использовали XY text и coords. Затем мы определили предел по оси y. Наконец-то мы его вычислили.
2. Полноволновой выпрямитель от косинусного сигнала
import matplotlib.pyplot as plt import numpy as pp fig,.subplots() .arange(0.0, 1.0, 0.001).cos(2 * pp.pi * 5 * t).plot(t, s,) # Annotation ppool.annotate('Peak Values', xy=(0, 1), xytext=(1,(facecolor, .05),xycoords="data",) plt.xlabel("Time") plt.ylabel("output Voltage") ppool.set_ylim(-1, 1) # Plot the Annotation in the graph plt.show()
В этом примере наша цель состоит в том, чтобы напечатать выход полноволнового выпрямителя для косинусного сигнала. Здесь значение от пика до пика равно -1 к 1. Частота данного косинусного сигнала составляет 5 Гц. Здесь, помимо вышеперечисленных вещей, мы использовали этикетку plt. Что он делает, так это то, что он дает нам свободу также маркировать 2 оси.
Различное применение
<сильный>1. Аннотировать точечную диаграмму
Мы аннотируем точечную диаграмму, используя этот метод, давайте рассмотрим пример.
import matplotlib.pyplot as plt y = [3.2, 3.9, 3.7, 3.5, 3.02199] x = [0.15, 0.3, 0.45, 0.6, 0.75] n = [155, "outliner", 293, 230, 670] fig,.subplots() ax.scatter(x, y) for i, txt in enumerate(n): ax.annotate(txt, (x[i], y[i])) plt.show()
Здесь выше для того, чтобы построить диаграмму рассеяния. Сначала мы определили координаты вдоль осей x и y. Теперь, соответствующие каждой точке, мы объявили обозначения. Тогда мы использовали for href=”https://en.wikipedia.org/wiki/LOOP_(programming_language)”>loop для автоматического получения значения аннотации для каждой точки. href=”https://en.wikipedia.org/wiki/LOOP_(programming_language)”>loop для автоматического получения значения аннотации для каждой точки.
<сильный>2. Аннотировать гистограмму
import matplotlib.pyplot as plt import numpy as np labels = ['Mon', 'Tue', 'Wed', 'Thu', 'Fri'] shop_a = [20, 33, 30, 28, 27] shop_b = [25, 32, 33, 20, 25] .arange(len(labels)) .35 # the width of the bars fig,.subplots().bar(x - width/2, shop_a, width,).bar(x + width/2, shop_b, width,) ax.set_ylabel('Sales') ax.set_title('Sales report of 2 shops') ax.set_xticks(x) ax.set_xticklabels(labels) ax.legend() def autolabel(rects): for rect in rects: .get_height() ax.annotate('{}'.format(height), xy=(rect.get_x() + rect.get_width() / 2, height), xytext=(0, 3), ,, ,) autolabel(rects1) autolabel(rects2) fig.tight_layout() plt.show()
Здесь мы успешно выполнили аннотацию для гистограммы. Здесь график представляет собой сравнение товара, проданного 2 магазинами с понедельника по пятницу. Еще одна вещь, на которую следует обратить внимание, – это то, что мы настроили размер и цвет аннотированного текста. Вы можете просто сделать это, добавив и в аннотирующий тег.
Ошибка-matplotlib annotate не отображается
Эта ошибка может возникнуть у вас при работе с этой функцией. Основной причиной может быть какая – то ошибка в вашем коде. Одна из самых распространенных ошибок заключается в том, что положение текста аннотации намного выше ваших соответствующих осей. В этом случае аннотация будет там, но вы не можете ее увидеть из-за разницы в размере.
Должен Читать
- Работа С текстом Matplotlib в Python
- Реализация спектрограммы Python в Python с нуля
- Преобразование текстового файла в PDF С помощью Python | PDF
Вывод
В этой статье мы рассмотрели аннотацию Matplotlib. Кроме того, мы также рассмотрели его синтаксис и параметры. Для лучшего понимания мы рассмотрели несколько примеров. Мы варьировали синтаксис и рассматривали выходные данные для каждого случая. В конце концов, мы можем сделать вывод, что функция Matplotlib Annotate используется для аннотирования графиков, генерируемых Matplotlib.
Надеюсь, эта статья смогла развеять все сомнения. Но если у вас есть какие-либо нерешенные вопросы, не стесняйтесь писать их ниже в разделе комментариев. Прочитав это, почему бы не прочитать об argpartition далее.