Как добавить текст в графики Matplotlib (с примерами)


Вы можете легко добавить текст на график Matplotlib, используя функцию matplotlib.pyplot.text() , которая использует следующий синтаксис:

matplotlib.pyplot.text(x, y, s, fontdict=None)

куда:

  • x: x-координата текста
  • y: Y-координата текста
  • s: строка текста
  • fontdict: словарь для переопределения свойств текста по умолчанию.

В этом руководстве показано несколько примеров использования этой функции на практике.

Пример 1: добавьте один текст в график Matplotlib

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

import matplotlib.pyplot as plt

#create data
x = [3, 6, 8, 12, 14]
y = [4, 9, 14, 12, 9]

#create scatterplot
plt.scatter (x, y)

#add text at (x, y) coordinates = (6, 9.5)
plt.text (6, 9.5, 'Here we go')

Пример 2: добавление нескольких текстов к графику Matplotlib

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

import matplotlib.pyplot as plt

#create data
x = [3, 6, 8, 12, 14]
y = [4, 9, 14, 12, 9]

#create scatterplot
plt.scatter (x, y)

#add text at (x, y) coordinates = (6, 9.5)
plt.text (6, 9.5, 'A piece of text')

#add another piece of text
plt.text (8, 13, 'Another piece of text') 

Пример 3: изменение свойств текста

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

Следующий код показывает, как это сделать:

import matplotlib.pyplot as plt

#create data
x = [3, 6, 8, 12, 14]
y = [4, 9, 14, 12, 9]

#create scatterplot
plt.scatter (x, y)

font = {' family ': ' serif',
 'color ': ' red',
 'weight ': ' bold',
 'size ': 20
 }

#add text with custom font
plt.text (6, 9.5, 'A piece of text', fontdict=font)

Пример 4. Добавьте рамку вокруг текста

Следующий код показывает, как добавить рамку вокруг текста:

import matplotlib.pyplot as plt

#create data
x = [3, 6, 8, 12, 14]
y = [4, 9, 14, 12, 9]

#create scatterplot
plt.scatter (x, y)

font = {' family ': ' serif',
 'color ': ' red',
 'weight ': ' bold',
 'size ': 20
 }

box = {' facecolor ': ' none',
 'edgecolor ': ' green',
 'boxstyle ': ' round '
 }

#add text with custom font
plt.text (6, 9.5, 'A piece of text', fontdict=font, bbox=box) 

Дополнительные ресурсы

Как аннотировать диаграммы рассеяния Matplotlib
Как изменить размер шрифта на графике Matplotlib