【发布时间】:2020-05-11 15:37:01
【问题描述】:
我已经运行 Seaborn 的 clustermap 并将结果保存到名为“test”的 ClusterGrid 对象中。然而,由于一些未知的原因,该命令没有显示集群图,除非我再次运行它,尽管“测试”不是空的。它确实是一个 ClusterGrid 对象。
既然我保存了 ClusterGrid,有没有什么简单的方法可以显示/绘制它?我试过 plt.plot 但没有用。
【问题讨论】:
-
显示到输出区域有时可能会出现绘图问题,重新运行它会更容易。但是您应该能够使您的其他方法发挥作用。由于您将其分配给
test,您是否尝试在代码下方的单元格中调用test.figure? Seaborn 在后台使用 matplotlib,因此通常可以将 matplotlib 图保存为图像作品。我想它会是test.savefig(),但现在在移动设备上,所以不能看。将其保存为图像后,我更喜欢使用代码单元来调用它,以便在笔记本中将图像编码为 base64。这样它就显示在静态视图中。 -
notebook 中的第七个代码单元说明了使用
Image()在输出中显示图像,并将其保存为笔记本代码中的 base64。如果你只是用 markdown 显示它,你需要在 notebook 中保留另一个文件以供以后查看。 -
看起来要将图像保存为文件,您可能需要
test.figure.savefig(),请参阅this line of code 和上面的代码作为指导。该图是 Seaborn 生成的热图。有些情节具有不同的属性和方法,因此如果必须尝试更多变体或在此处查找特定情节示例以获得确切的语法,请不要完全感到震惊。 -
另外,我想先问一下,您是否尝试将
%matplotlib inline或%matplotlib notebook作为绘图单元格上方单元格的第一行? -
@wayne test.figure 给我一个错误:-------------------------------- ------------------------------------------- AttributeError Traceback(最近一次调用最后一次)
in ----> 1 test.figure AttributeError: 'ClusterGrid' object has no attribute 'figure' 而且我确实有 %matplotlib inline
标签: cluster-analysis jupyter seaborn