Як анотувати діаграми розсіювання matplotlib
Ви можете використовувати такий базовий синтаксис, щоб анотувати діаграми розсіювання в Matplotlib:
#add 'my text' at (x, y) coordinates = (6, 9.5) plt. text (6, 9.5, ' my text ')
Наступні приклади показують, як використовувати цей синтаксис на практиці.
Створіть базову хмару точок
Наступний код показує, як створити базову діаграму розсіювання за допомогою Matplotlib:
import matplotlib.pyplot as plt #createdata x = [3, 6, 8, 12, 14] y = [4, 9, 14, 12, 9] #create scatterplot plt. scatter (x,y)
Позначте одну точку
Ми можемо використовувати наступний код, щоб додати анотацію до однієї точки на графіку:
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 'Here' at (x, y) coordinates = (6, 9.5) plt. text (6, 9.5, ' Here ')
Примітки до кількох точок
Ми можемо використовувати такий код, щоб додати анотації до кількох точок на графіку:
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 to certain points plt. text (3, 4.5, ' This ') plt. text (6, 9.5, ' That ') plt. text (8.2, 14, ' Those ')
Прокоментуйте всі пункти
Ми можемо використовувати наступний код, щоб додати анотації до кожної точки на графіку:
import matplotlib.pyplot as plt #createdata x = [3, 6, 8, 12, 14] y = [4, 9, 14, 12, 9] labs = ['A', 'B', 'C', 'D', 'E'] #create scatterplot plt. scatter (x,y) #use for loop to add annotations to each point in plot for i, txt in enumerate(labs): plt. annotate (txt, (x[ i ], y[ i ]))
За замовчуванням анотації розміщуються безпосередньо над точками у хмарі точок, а розмір шрифту за замовчуванням становить 10.
У наведеному нижче коді показано, як налаштувати ці два параметри так, щоб анотації були трохи праворуч від точок, а розмір шрифту був трохи більшим:
import matplotlib.pyplot as plt #create data x = [3, 6, 8, 12, 14] y = [4, 9, 14, 12, 9] labs = ['A', 'B', 'C', 'D', 'E'] #create scatterplot plt. scatter (x,y) #use for loop to add annotations to each point in plot for i, txt in enumerate(labs): plt. annotate (txt, (x[ i ]+.25, y[ i ]), fontsize=12)
Додаткові ресурси
У наступних посібниках пояснюється, як виконувати інші типові завдання в Matplotlib:
Як додати легенду до діаграми розсіювання в Matplotlib
Як розфарбувати діаграму розсіювання за значенням у Matplotlib
Як додати середню лінію до графіків у Matplotlib