我试图保存使用matplotlib制作的绘图;然而,这些图像保存为空白.

这是我的代码:

plt.subplot(121)
plt.imshow(dataStack, cmap=mpl.cm.bone)

plt.subplot(122)
y = copy.deepcopy(tumorStack)
y = np.ma.masked_where(y == 0, y)

plt.imshow(dataStack, cmap=mpl.cm.bone)
plt.imshow(y, cmap=mpl.cm.jet_r, interpolation='nearest')

if T0 is not None:
    plt.subplot(123)
    plt.imshow(T0, cmap=mpl.cm.bone)

    #plt.subplot(124)
    #Autozoom

#else:
    #plt.subplot(124)
    #Autozoom

plt.show()
plt.draw()
plt.savefig('tessstttyyy.png', dpi=100)

还有Tessttyyy.png是空白的(也try 了.jpg)

推荐答案

首先,当T0 is not None岁时会发生什么?我会测试它,然后我会调整我传递到plt.subplot()的值;可以try 值131、132和133,或者根据T0是否存在而定的值.

第二,调用plt.show()后,创建一个新图形.要解决这个问题,你可以

  1. plt.show()之前先打plt.savefig('tessstttyyy.png', dpi=100)

  2. 通过拨打plt.gcf()获取当前数字,在show()之前保存数字,然后您可以随时拨打savefig()获取Figure对象.

例如:

fig1 = plt.gcf()
plt.show()
plt.draw()
fig1.savefig('tessstttyyy.png', dpi=100)

在你的代码中"Tessttyy"."png"为空,因为它保存的是新图形,没有绘制任何图形.

Python相关问答推荐

将数组操作转化为纯numpy方法

从收件箱获取特定列中的重复行

当变量也可以是无或真时,判断是否为假

自动编码器和极坐标

PyTorch卷积自动编码器,输出维度与输入不同

如何对行使用分段/部分.diff()或.pct_change()?

将从Python接收的原始字节图像数据转换为C++ Qt QIcon以显示在QStandardProject中

计算所有前面行(当前行)中列的值

如何使用SubProcess/Shell从Python脚本中调用具有几个带有html标签的参数的Perl脚本?

Python中使用时区感知日期时间对象进行时间算术的Incredit

GL pygame无法让缓冲区与vertextPointer和colorPointer一起可靠地工作

配置Sweetviz以分析对象类型列,而无需转换

三个给定的坐标可以是矩形的点吗

如何请求使用Python将文件下载到带有登录名的门户网站?

在嵌套span下的span中擦除信息

如何在Python中使用另一个数据框更改列值(列表)

基于行条件计算(pandas)

LocaleError:模块keras._' tf_keras. keras没有属性__internal_'''

基于另一列的GROUP-BY聚合将列添加到Polars LazyFrame

OpenGL仅渲染第二个三角形,第一个三角形不可见