自2015年11月起,plotly是开源的,可用于python。 https://plot.ly/javascript/open-source-announcement/
尝试脱机绘制某些图时,它们可以在iPython Notebook(版本4.0.4)中使用
但是,如果我尝试在Spyder(版本2.3.8)中运行它们,我将得到以下输出:
<IPython.core.display.HTML object>
<IPython.core.display.HTML object>
我的代码有问题,或者Spyder的iPython Terminal仍然不支持此功能?
这是示例代码(取自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)
最佳答案
导入图代替iplot(并将最后一行从iplot(fig)更改为plot(fig)解决了该问题,至少在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,
)
})
关于python - plotly :如何在Spyder中显示图表?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/35315726/