Matplotlib如何给图表添加副标题

7
我想在包含多个子图的图形中添加一个标题。
这是我的代码:
    import matplotlib.pyplot as plt 

    plt.figure(figsize = (15, 80))
    for i, audio, rate, name in zip(range(len(audios)), audios, rates, names):
        plt.subplot(len(audios), 1, i+1)
        plt.plot(rate, audio)
        plt.xlabel('Time (s)')
        plt.ylabel('Amplitude')
        plt.title(name)
    plt.subtitle('Figure 1: Plot amplitude of signal')
    plt.show()

我收到的错误是:module 'matplotlib.pyplot' has no attribute 'subtitle'。我无法理解为什么这不起作用,因为在matplotlib文档中是这样写的!谢谢你的帮助。

3
应该使用.suptitle而不是.subtitle - Willem Van Onsem
1个回答

12
错误是正确的,pyplot库没有.subtitle函数,只有一个.suptitle函数
因此,您应该这样修复:
import matplotlib.pyplot as plt 

plt.figure(figsize = (15, 80))
for i, audio, rate, name in zip(range(len(audios)), audios, rates, names):
    plt.subplot(len(audios), 1, i+1)
    plt.plot(rate, audio)
    plt.xlabel('Time (s)')
    plt.ylabel('Amplitude')
    plt.title(name)
plt.<b>suptitle</b>('Figure 1: Plot amplitude of signal')
plt.show()

鉴于您的金色徽章和这是一个打字错误,本应该将其发布为评论。无论如何,现在已经发出来了。 - Sheldore
2
@Bazingaa:我不确定这是严格意义上的拼写错误。毕竟,.subtitle也是一个有效的候选项。所以我认为这不是“打字错误”。这更像是经典的“误读”,然后以那种方式使用它。 - Willem Van Onsem

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接