我可以在 Foundry 代码工作簿中保存 .png 吗?

Can I save a .png in a Foundry Code Workbook?

我正在使用 Foundry 代码工作簿生成图像,然后尝试将其保存回 Foundry。我可以很好地生成图像,但很难保存它。

能否请您帮助我了解如何通过代码工作簿保存 .png 图像文件?

Code Workbook 使用 Agg 后端并将图形保存为 .png,您可以在尝试将 .png 字节保存到 Foundry 时参考它。指定后端和指定 savefig 输出格式将需要更改后端配置,这可以由 Palantir 支持团队进行。

这可以在 python 中使用原始文件访问。假设您选择了 Python 转换输入作为输入类型,以下代码(对于 matplotlib)会将 PNG 保存到数据集。

import matplotlib.pyplot as plt
plt.scatter([1, 2, 3], [1, 2, 3])
plt.show()

output = Transforms.get_output()
output_fs = output.filesystem()
plt.savefig('test.png')
img = open('test.png', 'rb').read()

with output_fs.open('png_test.png', 'wb') as f:
    f.write(img)
    f.close()