我有一个 IPYNB 文件(从 Google Colab 下载的笔记本)。它有一个单元格,可以在绘图中绘制图表:
import plotly.express as px
fig = px.line(x=[1,2,3], y=[1,2,3])
fig.show()
我在笔记本中看到了图表,但当我将该笔记本渲染为 Quarto 项目的源文件时却看不到图表。
从 .QMD 文件渲染时,绘图数据确实会显示,但我想使用 .IPYNB,因为我的笔记本已经利用了 Colab 特定的功能,如表单、笔记本机密等。
我的问题是:如何使用 .IPYNB 文件源,以在 Colab 和 Quarto 中都可以工作的方式,在 Quarto 中正确显示绘图数据?
更新:这是一些调查代码。 Colab 和 quarto 上的渲染器似乎不同,但没有重叠?
由于两个环境之间没有重叠,但是每个环境都有一些模式可以工作,我建议使用下面的代码片段来检测当前环境,然后相应地设置渲染器,如下所示:
import plotly.io as pio
import IPython
def get_environment():
try:
# Check if running in Google Colab
if 'google.colab' in str(IPython.get_ipython()):
return 'colab'
except NameError:
pass
try:
# Check if running in Quarto
if 'quarto' in IPython.get_ipython().config:
return 'quarto'
except:
pass
# Default to Jupyter Notebook
return 'notebook'
env = get_environment()
if env == 'colab':
pio.renderers.default = 'colab'
elif env == 'quarto':
pio.renderers.default = 'notebook'
else:
pio.renderers.default = 'notebook'