Matplotlib: как установить текущую цифру?
это, надеюсь, простой вопрос, но я не могу понять это на данный момент. Я хочу использовать matplotlib, чтобы показать 2 цифры, а затем использовать их в интерактивном режиме. Я создаю фигуры с помощью:
import matplotlib
import pylab as pl
f1 = pl.figure()
f2 = pl.figure()
и может использовать MATLAB-подобный интерфейс pyplot для построения и рисования на обоих рисунках. С
current_figure = pl.gcf()
Я могу определить текущую активную фигуру для интерфейса pyplot, в зависимости от того, какую фигуру я нажал. Теперь я хочу нарисовать что-то на первой фигуре с помощью интерфейс pyplot но нынешняя цифра может быть любой из них. Так что есть что-то вроде
pl.set_current_figure(figure)
или любой обходной путь? (Я знаю, что могу использовать объектно-ориентированный интерфейс, но для интерактивных вещей просто использовать команды, такие как plot(x, y), намного лучше)
2 ответа:
вы можете просто установить рисунок
f1
как новая текущая цифра с:pl.figure(f1.number)
другой вариант-дать имена (или числа) фигурам, которые могут помочь сделать код более легким для чтения:
pl.figure("Share values") # ... some plots ... pl.figure("Profits") # ... some plots ... pl.figure("Share values") # Selects the first figure again
фактически, цифра "числа" может быть строками, которые, возможно, более явны, чем простые числа.
PS: эквивалент pyplot
pylab.figure()
- этоmatplotlib.pyplot.figure()
.