有没有办法在IPython笔记本中创建交互式图(一个D3)?

d13*_*337 15 ipython-notebook

我发现了这两个答案: ipython笔记本中的动画图, 如何在ipython笔记本中抓取matplotlib图作为html?

但他们没有解决互动问题.我想显示一条包含2-3条曲线的图表,让用户悬停这些曲线以接收更多细节或控制用于从组合框生成这些曲线的参数

eld*_*d-a 9

iPython上检查以下答案:类似Manipulate的命令.

以及以下两个方向:

  1. IPython interact/ive在IPython 中的动机- 软件的属性以及它们如何影响我们的工作--Brian Granger在32米附近:12秒; 并可在IPython的github上获得
  2. Altair提供了一个强大而简洁的语法,基于vega-lite; 看画廊
  3. MPLD3:将Matplotlib引入浏览器

  • +1 mpld3很可爱.您可以导入它,并在`%pylab inline`调用下运行`mpld3.enable_notebook()`,所有绘图都变为交互式.虽然可以有点慢. (2认同)

AFo*_*lia 7

我不相信标准的matplotlib图能够实现您想要的交互性. Chaco可以做交互式图表,但不能用于ipython笔记本,AFAICT.你最好的选择可能是Bokeh.它输出到Javascript/HTML,可以做交互式图形,并有一个从ipython使用它的例子.


小智 7

您可以查看Plotly.它们在IPython笔记本中呈现交互式D3图(此处的示例.您也可以导出为静态图像,并在悬停时缩放,悬停,平移和查看文本.交互性是他们强调的一个角色.更多,你也可以在Notebook中使用IPython小部件,这样可以为您提供更多控制和选项.例如:

在此输入图像描述