python - Google Colab 在文本框中插入保存的图形

标签 python jupyter google-colaboratory file-access

我正在编写一个 Colab 笔记本来与我的学生分享,所以我想要一个笔记本的副本以在其他 Google 帐户中运行。

我确实在 Colab 的 python/jupyter notebook 中绘制了一些数据并保存了它。喜欢

plt.savefig("Jump1-04.png")

稍后我想在一个单元格中使用这张图片,所以我尝试了各种 Markdown 和/或 HTML 方法来包含这张图片。示例:

!()["Jump1-04.png"]

或者

<img src="/content/Jump1-02.png" />

都没有用。我的困惑是我的代码可以使用 open("Jump1-04.png", 'r') 打开这个文件,所以笔记本代码知道文件保存在哪里,但文本单元格不知道。 !pwd 返回 /content!ls/content 返回 Jump1-04.png。这就是为什么我尝试将 /content 放在上面的 HTML 代码中。

我想避免 ITB 使用 Google 云端硬盘查找文件、公开共享链接,然后在文本单元格中使用该链接的痛苦。

为什么文本单元不能简单地找到我从代码单元保存的文件?

最佳答案

我也不是 100% 确定您的代码行有什么“不正确”,但我不得不尝试使用 plt.show() 和 plt.imshow(),并且我还将数字定义为最初保存(即“无花果”)所以“fig.savefig()”而不是“plt.savefig()”,这没有太大区别,但根据你的描述这是有效的:

import numpy as np
import matplotlib
import matplotlib.pyplot as plt
fig = plt.figure(figsize = (10, 5), num = 1, clear = True)
ax = plt.subplot(1, 1, 1, xticks = [], yticks = [], frameon = False)
ax.plot(np.arange(0, 10, 1), color = [0, 0.5, 1], lw = 5)
plt.show()
fileName = 'Jump1-04.png'
fig.savefig(fileName)

要打开保存的文件(在稍后的单独单元格中):

import PIL
from PIL import Image
fig = plt.figure(figsize = (10, 5), num = 1, clear = True)
ax = plt.subplot(1, 1, 1, xticks = [], yticks = [], frameon = False)
fileName = 'Jump1-04.png'
thisImage = Image.open(fileName)
thisImage = ax.imshow(thisImage)
plt.show(thisImage)

要解决第一句话,听起来您希望这些图或图像具有公开的 url 链接并且您和您的学生可以访问互联网上的这些图或图像,我还没有找到解决方案;如果/当我这样做时,我会更新。

关于python - Google Colab 在文本框中插入保存的图形,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/69270180/

相关文章:

python - 如何使用时间作为带有seaborn的散点图的x轴?

python - 在 Google Colab 的 shell 脚本中连接命令字符串

python - 为什么 Google Colab shell 命令不起作用?

python - 与南方陷入移民冲突

python - pytorch dataloader RuntimeError : stack expects each tensor to be equal size, 但在条目 0 处得到 [224, 224] 并在条目 1 处得到 [224, 224, 3]

python - 添加df列以在另一个df中找到与索引值和动态源列都匹配的值?

python - Tensorflow_core._api.v2.train没有属性 'slice_input_producer'

python - 打开python文件时如何修复Jupyter扩展激活失败?

directory - Google Colab更改目录