如何在Google Colaboratory中插入内嵌图片

时间:2018-06-03 20:59:16

标签: image google-drive-api google-colaboratory

我正在尝试使用此表达式![Text](https://xxxx)在已存储在Google云端硬盘中的Google Colaboratory(降价)中插入图片,但它不起作用。例如,Colaboratory markdown手册显示了如何使用此示例An inline image: ![Google's logo](https://www.google.com/images/logos/google_logo_41.png)内嵌插入照片。好的,这是来自互联网的照片,但是,当我将已保存在Google云端硬盘中的照片替换为照片时,它不会出现。

10 个答案:

答案 0 :(得分:30)

如果您有这样的链接,那么我有解决方案。

https://drive.google.com/file/d/-------/view?usp=sharing
  1. 在Google云端硬盘中,右键单击图片
  2. 选择“获取共享链接”

    enter image description here

  3. 单击以“复制链接”。您需要读者权限。只需要图像的ID即可。

    enter image description here

就我而言,我的链接是:

https://drive.google.com/file/d/1xDrydbSbijvK2JBftUz-5ovagN2B_RWH/view?usp=sharing

现在,我们需要复制图像ID:

1xDrydbSbijvK2JBftUz-5ovagN2B_RWH

我们将使用此基本链接生成具有图片ID的链接:

https://drive.google.com/uc?export=view&id=your_id

然后我们将ID复制到链接中:

https://drive.google.com/uc?export=view&id=1xDrydbSbijvK2JBftUz-5ovagN2B_RWH

最后,将其作为图像放置在Google Colab中:

![](https://drive.google.com/uc?export=view&id=1xDrydbSbijvK2JBftUz-5ovagN2B_RWH)

答案 1 :(得分:7)

根据the answers here

![](https://drive.google.com/uc?export=view&id=XXX)

答案 2 :(得分:3)

我尝试了以上所有答案,但由于Google最近(在撰写本文时)进行了微小更改,因此没有任何效果。如果单击“获取可共享的链接”并将其粘贴,它将看起来像这样:

https://drive.google.com/open?id=12BumFEqzKxc9mog8tYuUqvpxf10ot6W3

现在只需将 open?id 更改为 uc?id ,即可立即使用。

答案 3 :(得分:3)

在接下来的3种格式中,只有第一种适用于我:

![](https://drive.google.com/uc?export=view&id=0B3SU50kcW4Q4WFlla00tX3hkdkE)    
![](https://drive.google.com/file/d/0B3SU50kcW4Q4WFlla00tX3hkdkE)    
![](https://drive.google.com/open?id=0B3SU50kcW4Q4WFlla00tX3hkdkE)

答案 4 :(得分:2)

不幸的是,我尝试了上面的方法,但是它们对我不起作用。然后,我只是尝试右键单击要在colab上显示的图片,然后选择“获取可共享的链接”,然后将该链接自动复制到我的剪贴板中:

enter image description here

链接类似于

https://docs.google.com/uc?id=-----

然后使用colab的图片插入按钮,并将该链接插入到(https://)部分

![picture](your link)

像魔术一样工作!

但是,如果您获得这样的链接

https://drive.google.com/file/d/-------/view?usp=sharing

将图片公开后,它不起作用。

答案 5 :(得分:1)

以下是使用纯HTML而不是markdown的示例。

<figure>
<center>
<img src='https://drive.google.com/uc?id=1Rb6oXW3KufLApvID5MwxsknpoON2CkQ_' />
<figcaption>Image Caption</figcaption></center>
</figure>

这样,您还可以将图片居中,添加标题等

答案 6 :(得分:1)

以下方法对我有用:

  1. 上传在Google驱动器上的图片。
  2. 启用链接共享(右键单击图像>获取共享链接)
  3. 访问类型从“受限”更改为“有链接的任何人” ,将角色保留为“查看者”,单击“完成”(弹出窗口应关闭)。 / li>
  4. 双击图像,点“更多操作” 图标(右上角,三个垂直点)。单击它,然后选择“在新标签页中打开” 从更多操作菜单中,打开新窗口。
  5. 现在,再次点击“更多操作” 图标(右上角,三个垂直点)。单击它,然后选择“嵌入项目” 。它将为您提供HTML “嵌入代码段”
  6. 复制该HTML代码段并将其粘贴到降价或代码单元格内的Colab记事簿中。

如果您使用代码单元,则可以使用魔术函数 %% html (根据需要更改iframe的宽度和高度)。

%%html
<iframe src="link_placeholder" width="600" height="300"></iframe>

答案 7 :(得分:0)

我尝试了上述所有方法,但对我来说没有任何效果。但是,有一种解决方法完全绕开了Google云端硬盘的使用:只需将图像作为Base64数据插入普通HTML中即可,如下所示:

<img src='data:image/png;base64, ...lots of base64-data.. style="max-width:100%;" />

例如,如果您正在使用draw.io绘制要包含的图,则有一个方便的选项用于嵌入数据(在file-> embed下)。如果在此菜单中选择“图像”,则会弹出一个弹出窗口,其中包含相关代码供您复制。否则,您可以使用在线base64转换器的图像。

此方法的缺点是最终将粘贴大量数据。但是,如果为此目的使用专用单元格,则无需再次编辑该单元格。

(请注意,如果您由于某种原因无法包含图像文件,则此方法可在大多数Markdown编辑器中使用。有时,它也可以使用SVG数据代替base64,但在Google Colab中不起作用)

答案 8 :(得分:0)

可分享图片的链接仅限于与该图片相关联的唯一代码。更新图片(发生)后,您也需要更新链接。

描述了替代方法 here 。我的解决方案也在那里给出,所以我不会在这里复制过去。

答案 9 :(得分:0)

您可以简单地复制剪贴板中的图片并将其粘贴到 Markdown 单元格中