2016-02-10 3 views
4

С ноября 2015 года плагин является Open-Source и доступен для python. https://plot.ly/javascript/open-source-announcement/визуализировать графические диаграммы в spyder

При попытке сделать некоторые участки в автономном режиме, эти работы в IPython Notebook (версия 4.0.4) Но если я пытаюсь запустить их в Spyder (версия 2.3.8), я просто получить следующий вывод:

<IPython.core.display.HTML object> 
<IPython.core.display.HTML object> 

В моем коде есть что-то не так, или iPython Terminal Spyder все еще не поддерживает это?

Здесь идет пример кода (взятый из https://www.reddit.com/r/IPython/comments/3tibc8/tip_on_how_to_run_plotly_examples_in_offline_mode/)

from plotly.offline import download_plotlyjs, init_notebook_mode, iplot 
from plotly.graph_objs import * 
init_notebook_mode() 

trace0 = Scatter(
    x=[1, 2, 3, 4], 
    y=[10, 11, 12, 13], 
    mode='markers', 
    marker=dict(
     size=[40, 60, 80, 100], 
    ) 
) 
data = [trace0] 
layout = Layout(
    showlegend=False, 
    height=600, 
    width=600, 
) 

fig = dict(data=data, layout=layout) 

iplot(fig) 

ответ

5

импорта участок вместо iplot (и изменения последней строки из iplot (рис) для построения (рис) решил проблему, по крайней мере, в Python 3 :

from plotly.offline import download_plotlyjs, init_notebook_mode, plot 
from plotly.graph_objs import * 
init_notebook_mode() 

trace0 = Scatter(
    x=[1, 2, 3, 4], 
    y=[10, 11, 12, 13], 
    mode='markers', 
    marker=dict(
     size=[40, 60, 80, 100], 
    ) 
) 
data = [trace0] 
layout = Layout(
    showlegend=False, 
    height=600, 
    width=600, 
) 

fig = dict(data=data, layout=layout) 

plot(fig) 

Но вместо того, чтобы вы могли сделать следующее, что немного проще:

import plotly 
import plotly.graph_objs 
plotly.offline.plot({ 
"data": [ 
    plotly.graph_objs.Scatter( x=[1, 2, 3, 4], 
    y=[10, 11, 12, 13], mode='markers', 
    marker=dict(
     size=[40, 60, 80, 100]))], 
"layout": plotly.graph_objs.Layout(showlegend=False, 
    height=600, 
    width=600, 
) 
}) 
+0

Спасибо. Попробуем это первым делом с утра. У вас нет ПК. – Gabriel

+1

Спасибо @Dominix. Оба решения работают и на python 2.70. – Gabriel

+0

Использование plot() откроет окно браузера. Это нарушит рабочий процесс. – Chao