LoginSignup
5
7

More than 5 years have passed since last update.

Jupyter Notebook上でPlotlyのグラフが表示されなくなる現象についての覚え書き

Last updated at Posted at 2017-02-26

問題の現象

現象が発生した経緯

Jupyter Notebook上で同じコードを使って何度もプロットを繰り返していると、ある時からグラフが表示されなくなった。
プロット回数の制限を超えたのかと思い、数日経ってから再度プロットを実行してみたが表示されなかった。

現象が発生したコード

Notebook
import numpy as np
theta = np.linspace(-4 * np.pi, 4 * np.pi, 100)
z = np.linspace(-2, 2, 100)
r = z**2 + 1
x = r * np.sin(theta)
y = r * np.cos(theta)

from plotly.graph_objs import Scatter3d
from plotly.offline import init_notebook_mode, iplot
init_notebook_mode()

scatter = Scatter3d(x=x, y=y, z=z, mode='lines')
iplot([scatter])

現象の発生条件

  • PlotlyのOfflineモードを使っている
  • Jupyter Notebook上にプロット

現象発生時の環境

  • OS: OS X El Capitan
  • Python: 3.5.2
  • Plotly: 1.12.9

回避策

Plotlyのバージョンを1.9.5に変更したらプロットできるようになった。今のところは正常に動いている。
condaではインストールできないのでpipでインストールした。
pip install plotly==1.9.5

調査した内容

試したこと

  • init_notebook_mode()init_notebook_mode(connected=True)に変更 → NG
  • Plotlyの再インストール → NG
    1. conda remove plotly
    2. conda clean -p
    3. conda install plotly
  • VMWare Fusion上のWindows 10で実行 → NG
  • iplotplotに変更(Jupyter Notebook外にプロット) → OK

プロット回数の制限

Plotly API rate limits
1日に50回までという制限があるが、日をまたいでの制限についての記述はない。

同様の現象についての報告

Offline Mode in Jupyter Notebook shows blank graphs - API / Python - Plotly Forum
同じような現象が2016年8月から継続的に報告されている。

iplot doesn't display the graph at first in a new browser · Issue #506 · plotly/plotly.py
Plotly 1.9.5にダウングレードしたら直ったと書いてある。

5
7
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
5
7