Как сделать копии моих встроенных графиков копируемыми? - PullRequest
0 голосов
/ 05 февраля 2020

Если у меня есть какой-то сюжет, вложенный в некоторый l oop, скажем:

import matplotlib.pyplot.plot as plot
import matplotlib.pyplot at plt

x = [1, 2, 3, 4]
plt.figure()
plot(x)
plt.title('some title with the {name}')

Заголовок - Dynami c, и я часто хочу скопировать имя в буфер обмена после просмотра сюжет. Есть ли способ сделать заголовок моего сюжета копируемым?

Еще одно замечание: я использую Spyder 4.0.1, и мои графики появляются на его панели графиков.

1 Ответ

2 голосов
/ 05 февраля 2020

Изображение (например, холст matplotlib) - это массив значений интенсивности, которые мы называем пикселями. По сути, он не содержит никакой текстовой информации, даже если ваш мозг интерпретирует некоторые расположения световых паттернов как текст. Поэтому вы должны сделать эту строку копируемой как строку вне графика.

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

import matplotlib.pyplot.plot as plot
import matplotlib.pyplot at plt

x = [1, 2, 3, 4]
plt.figure()
plot(x)

t = 'some title with the {name}'
plt.title(t)
print(t)

Теперь вы можете свободно копировать текстовое представление заголовка вне командной строки.

Если у вас все в порядке с дополнительными зависимостями, вы можете скопировать их прямо в буфер обмена, как рекомендовано в этого вопроса . Например, с установленным pyperclip вы можете сделать:

import pyperclip

pyperclip.copy(t)
...