使用的是hexo-jupyter-notebook

地址:https://www.npmjs.com/package/hexo-jupyter-notebook

首先展示效果:



实现方法按照官网给的方法来:

第一步:

进入自己的hexo目录,安装: cnpm install hexo-jupyter-notebook --save

我用的是cnpm,没有cnpm的话就用npm

第二步:

安装pandoc: sudo apt-get install pandoc

安装nbconvert: pip install nbconvert

第三步:

  • 打开hexo的配置文件 _config.yml, 把里面的post_asset_folder: true改为true

  • 在写文章的_posts目录下面创建jupyter-demo文件夹专门存放用于展示在博客文章中的ipynb文件: mkdir jupyter-demo

  • 把用jupyter notebook写的内容保存为.ipynb格式的,存放到jupyter-demo目录中

  • 在需要插入的展示jupyter的地方写入:

1
2
<script src="http://code.jquery.com/jquery-2.0.0.js"></script>
{% asset_jupyter /usr/bin/python3.5 ../jupyter-demo/baidu_songlist_fenxi.ipynb %}

注意, /usr/bin/python3.5是Python安装的路径,上面pip安装的nbconvert要安装在对应的Python版本中。

然后就可以在hexo文章中显示jupyter-notebook。


其他:

在hexo的node_modules里面找到hexo-jupyter-notebook下面的main.py文件中,找到:

1
2
3
<iframe id='ipynb' marginheight="0" frameborder="0" width='924px' height='680px' srcdoc="%s" style="scrolling:no;">
</iframe>

可以自己增加了高度680px,但是这样是固定的,所以引用了jQuery文件来自适应高度。

还有一个在hexo中显示jupyter的.ipynb文件的方法,使用的是这个网站提供的服务:

http://nbviewer.jupyter.org/

不过没有前面那个方法好用。