web-dev-qa-db-ja.com

プロットチャートはPyCharmに表示されません

Pycharmでインタラクティブなプロットグラフを表示するにはどうすればよいですか?次のコードを実行します。

_import plotly.offline as py
import plotly.graph_objs as go

py.init_notebook_mode(connected=True)

data = [go.Bar(
    x=['giraffes', 'orangutans', 'monkeys'],
    y=[20, 14, 23]
)]

py.iplot(data, filename="barplot")
_

PyCharmの結果は空白のフィールドです: Plotly result in Pycharm

Jupyter Notebookでは、このコードは結果として(適切な)インタラクティブチャートを提供します。

更新:からの回答 PyCharm IDEにPlotlyHTMLを埋め込む 私には機能しません。 (plot()の代わりに)iplot()関数を使用すると、チャートが別のファイルにエクスポートされ、新しいウィンドウでブラウザーが開きます。ノートブックの出力は、生成されたチャートのファイル名です。チャートをノートブックに含めて、JupyterNotebookのようにインタラクティブに使用したいと思います。その答えは、チャートを別のhtmlファイルにエクスポートすることだけです。

6
wind

最近リリースされたPlotly4.0のメジャーバージョンでは、以下の手順は、PyCharm内からiPythonノートブックを使用するmacOsMojave上のPyCharm2019.2で機能します。

これは、Jupyterノートブックをサポートする他の最近のバージョンのPyCharmでも、他のオペレーティングシステムでも機能するはずです。

パッケージと環境の管理にcondaを使用していますが、これは他のツールでも機能するはずです。 pipまたはpipenv(orcaがスタンドアロンでインストールされている場合)

これが私のステップです:

Conda環境を作成してアクティブ化します。

  • $ conda create -n pycharm-plotly python
  • $ conda activate pycharm-plotly

plotly.pyのGitHub README for Jupyter Notebook Support に従って、Plotly4.0とその依存関係をインストールします。

  • $ conda install -c plotly plotly==4.0.0
  • $ conda install "notebook>=5.3" "ipywidgets>=7.5"

さらに、これを機能させるには「PlotlyOrca」が必要であることがわかりました。

  • $ conda install -c plotly plotly-orca psutil requests

上記は、次のサンプルコードを使用して、PyCharm内の.ipynbファイル拡張子の「構成済みサーバー」と「管理対象サーバー」の両方で機能することに注意してください。

#%%
import plotly.graph_objects as go
import plotly.io as pio

pio.renderers.default = 'png'

fig = go.Figure(
    data=[go.Bar(y=[2, 1, 3])],
    layout_title_text="A Figure Displayed with fig.show()"
)
fig.show();

enter image description here

追記:

  • Plotlyのプロットレンダリングは、MatplotlibやSeabornで機能するのと同じように、PyCharmのScientificモードの "plain" Pythonファイルでは機能しないと思います。
4
jayBana

誰かが私が間違っていることを証明してくれることを願っていますが、あなたが達成しようとしていることは、実際には現時点では不可能のようです。私はあなたの問題がおそらくPyCharmのコミュニティ版に限定されることを望んでいました。 Scientific PyCharmのモードは、

[...]優れた機能セット[...]

したがって、 Professional Editionバージョン2019.1.2 にアップグレードすると、any形式のJupyterNotebookサポートが不足していないバージョンが提供されると確信していました。悲しいかな、私は間違っていたようです。私は他のさまざまなプロットアプローチを試しましたが、インタラクティブなプロットフィギュアを起動できるものは見つかりませんでした。

私が提供できるあらゆる証拠に近い:

enter image description here

バージョンの確認:

enter image description here


これは、スニペットを使用してPyCharmにないJupyterNotebookから実行したテストです。

プロット:

enter image description here


また、コメントで示唆されているように、plotly.offline.plot(plot(data), filename='file.html')williplotplotに置き換えると、Webブラウザーが開き、プロットも表示されます。

2
vestland

jayBanaの答えは正しいですが、PyCharmで.pyスクリプトを使い続けたい場合は、デフォルトのレンダラーを「ブラウザー」に設定するだけで、インタラクティブなプロットグラフを取得できます。

import plotly.io as pio
pio.renderers.default = "browser"

ここで説明されているように: https://plot.ly/python/renderers/

1
oy321

plotlyバージョン4以降、必要なのは、任意の_go.Figure_で.show()を呼び出すことだけです。

_import plotly.graph_objects as go
fig = go.Figure( go.Scatter(x=[1,2,3], y=[1,3,2] ) )
fig.show()
_
0
nicolaskruchten