Matplotlib: пустая путаница
Необходимо построить матрицу путаницы с этим сценарием. При его запуске появляется пустой график. Кажется, я близок к решению. Любой намек?
from numpy import *
import matplotlib.pyplot as plt
from pylab import *
conf_arr = [[50.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0], [3.0, 26.0, 0.0, 0.0, 0.0, 1.0, 0.0], [0.0, 0.0, 10.0, 0.0, 0.0, 0.0, 0.0], [4.0, 1.0, 0.0, 5.0, 0.0, 0.0, 0.0], [3.0, 0.0, 1.0, 0.0, 6.0, 0.0, 0.0], [0.0, 0.0, 0.0, 0.0, 0.0, 47.0, 0.0], [2.0, 0.0, 0.0, 0.0, 0.0, 0.0, 8.0]]
norm_conf = []
for i in conf_arr:
a = 0
tmp_arr = []
a = sum(i,0)
for j in i:
tmp_arr.append(float(j)/float(a))
norm_conf.append(tmp_arr)
plt.clf()
fig = plt.figure()
ax = fig.add_subplot(111)
res = ax.imshow(array(norm_conf), cmap=cm.jet, interpolation='nearest')
cb = fig.colorbar(res)
savefig("confmat.png", format="png")
Спасибо, у меня есть сюжет. Теперь отметки на осях X очень малы (размер графика: 3 см х 10 см или около того). Как я могу увеличить их, чтобы получить более пропорциональный график, скажем, график 10 х 10 см? Возможная причина в том, что я визуализирую график как вспомогательный участок? Не смог найти подходящую литературу, чтобы настроить это.
1 ответ
Решение
Вам не нужно очищать текущую фигуру (plt.clf()
) перед добавлением нового.
#plt.clf() # <<<<< here
fig = plt.figure()
ax = fig.add_subplot(111)