如何使 matplotlib 标题可搜索?



我正在制作几百个matplotlib图,我在Jupyter Notebook工作。每个都有自己的标题。我希望能够搜索这些标题。因此,当我将文件下载为 html 并在浏览器中打开它时,我想使用 ctrl-f 找到标题。我该怎么做?


更多细节,这是一个MCVE:

import matplotlib.pyplot as plt
x=range(5);y=range(5)
for i in range(6):
plt.figure()
plt.plot(x,y)
plt.title("Title"+str(i))

这产生了漂亮的情节,标题为标题0标题1 ...标题5.但是,这些标题是文件的一部分,无法通过ctrl-f搜索,或者浏览器不会将它们检测为文本,尽管这是需要的。

我可以在 gnuplot 中做到这一点,但现在我想坚持使用 Python。

您可以在 Jupyter 笔记本中生成降价。试试这个:

import numpy as np
import matplotlib.pyplot as plt
%matplotlib inline
from IPython.display import display, Markdown
display(Markdown('Title of graph goes here'))
x = np.linspace(0, 10, 30)
y = np.sin(x)
plt.plot(x, y, 'o', color='black');

编辑:我刚刚意识到在您的示例中,所有标题都将在图表之前打印。解决方案是:

import matplotlib.pyplot as plt
# DO NOT USE %matplotlib inline
x=range(5);y=range(5)
for i in range(6):
ax = plt.figure()
_ = plt.plot(x,y)
title = "Title"+str(i)
display(Markdown(title))
display(ax)

您可以为每个数字print标题(在这种情况下plt.show()必需的(:

import matplotlib.pyplot as plt
x=range(5);y=range(5)
for i in range(2):
plt.figure()
plt.plot(x,y)
plt.title("Title"+str(i))
print("Title"+str(i))
plt.show()

最新更新