matplotlib.pyplot.subplots() - 如何设置图形名称?

19 投票
3 回答
33752 浏览
提问于 2025-04-18 17:48

当我使用PyPlot的figure()函数创建一个单独的图表时,我可以通过传入一个字符串来设置窗口的名称:

import matplotlib.pyplot as plt
figure = plt.figure('MyName')

但是,plt.subplots()这个函数不接受字符串作为第一个参数。例如:

plt.subplots(2,2)  # for creating a window with 4 subplots

那么我该如何设置图表的名称呢?

3 个回答

0

你也可以这样做:

f, axarr = plt.subplots(2,2, num = PlotName)

这里的 PlotName 是一个字符串,这意味着你可以在创建窗口的时候给它起个名字。

21

plt.subplots() 这个函数会把一些额外的参数传递给 plt.figure。所以,num 这个参数可以按照你的需求来使用。

fig, ((ax1, ax2), (ax3, ax4)) = plt.subplots(2, 2, num='MyName')

你也可以通过这种方式设置 figsizedpi 等参数(具体可以查看 plt.figure文档)。

25

摘自 官方文档:

import matplotlib.pyplot as plt

#...

# Just a figure and one subplot
f, ax = plt.subplots()
ax.plot(x, y)
ax.set_title('Simple plot')

还有,如果你想更改窗口的标题,可以这样做:

import matplotlib.pyplot as plt 
fig = plt.figure() 
fig.canvas.manager.set_window_title('My Window Title') 
plt.show() 

如果你使用的 Matplotlib 版本低于 3.4,可以使用: fig.canvas.set_window_title('我的窗口标题')

关于弃用的参考(感谢 KaiserKatze)。

撰写回答