Как добавить переменную в Python plt.титул?

Я пытаюсь построить много диаграмм, и для каждой диаграммы я хочу использовать переменную для их маркировки. Как добавить переменную в plt.title? например:

import numpy as np
import matplotlib.pyplot as plt

plt.figure(1)
plt.ylabel('y')
plt.xlabel('x')

for t in xrange(50, 61):
    plt.title('f model: T=t')

    for i in xrange(4, 10):
        plt.plot(1.0 / i, i ** 2, 'ro')

    plt.legend
    plt.show()

в аргументе plt.title(), Я хочу t быть переменной, изменяющейся с циклом.

3 ответов


вы можете изменить значение в строку с помощью %. Документация может быть найдена здесь.

например:

num = 2
print "1 + 1 = %i" % num # i represents an integer

это выведет:

1 + 1 = 2

вы также можете сделать это с поплавками и вы можете выбрать, сколько знаков после запятой будет печатать:

num = 2.000
print "1.000 + 1.000 = %1.3f" % num # f represents a float

выдает:

1.000 + 1.000 = 2.000

использование этого в вашем примере для обновления t в названии рисунка:

plt.figure(1)
plt.ylabel('y')
plt.xlabel('x')

for t in xrange(50,61):
    plt.title('f model: T=%i' %t)

    for i in xrange(4,10):
        plt.plot(1.0/i,i**2,'ro')

    plt.legend
    plt.show()

Вы можете использовать форматирование для печати.

  1. plt.title('f model: T= {}'.format(t)) или
  2. plt.title('f model: T= %d' % (t)) # C печать стиль

бросьте все функции графика внутри цикла for, в частности, для индекса в диапазоне (количество участков). Используйте индекс в заголовке участка для каждого участка. Или, в качестве альтернативы, сделайте подзаголовок.