0

需要用这个脚本绘制一个混淆矩阵。通过运行它会出现一个空图。似乎我接近解决方案。有什么提示吗?

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 cm x 10 cm 左右)。如何放大它们以获得更比例的图形,比如说 10cm x 10cm 的图?一个可能的原因是我将图形可视化为子图?无法找到合适的文献来调整它。

4

1 回答 1

0

plt.clf()在添加新图形之前,您无需清除当前图形 ( )。

#plt.clf()  # <<<<< here
fig = plt.figure()
ax = fig.add_subplot(111)
于 2012-09-20T10:58:06.843 回答