Python - plt.tight_layout () TypeError: объект 'module' не вызывается - PullRequest
0 голосов
/ 31 октября 2018

я пытаюсь запустить следующий код

import matplotlib as plt

def plot_filters(layer, x, y):

    filters = layer.get_weights()
    fig = plt.figure.Figure()

    for j in range(len(filters)):
        ax = fig.add_subplot(y, x, j+1)
        ax.matshow(filters[j][0], cmap = plt.cm.binary)
        plt.xticks(np.array([]))
        plt.yticks(np.array([]))

    plt.tight_layout()
    return plt

plot_filters(model.layers[0], 8, 4)

при запуске я получаю 'module' object is not callable, и он ссылается на строку plt.tight_layout(). Не могу понять, как это назвать. Он присутствует в пакете matplotlib.

Любая помощь будет оценена!

Спасибо

1 Ответ

0 голосов
/ 31 октября 2018

Вы импортировали сам модуль matplotlib как plt, где вы должны импортировать модуль pyplot как plt вместо:

import matplotlib.pyplot as plt
import matplotlib.cm as cm

def plot_filters(layer, x, y):

    filters = layer.get_weights()
    fig = plt.figure()

    for j in range(len(filters)):
        ax = fig.add_subplot(y, x, j+1)
        ax.matshow(filters[j][0], cmap = cm.binary)
        plt.xticks(np.array([]))
        plt.yticks(np.array([]))

    plt.tight_layout()

plot_filters(model.layers[0], 8, 4)
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...