Python plotly
ライブラリ完全ガイド
Python の plotly
は、インタラクティブで高品質なグラフを作成できる強力なグラフ描画ライブラリです。本記事では、plotly
の主な機能と使用例について、コピー機能付きコードブロックとともに紹介します。
1. plotly
ライブラリの概要
plotly
は、動的なグラフやダッシュボードの作成に適しており、Web ブラウザでの表示に対応しています。plotly.express
を使えば、少ないコードで美しいグラフが描けます。plotly.graph_objects
を使えば、細かいカスタマイズも可能です。
インストール方法
pip install plotly
2. 主な機能と使用例
(1) 線グラフ(Line Chart)
import plotly.express as px df = px.data.gapminder().query("country == 'Japan'") fig = px.line(df, x="year", y="gdpPercap", title="GDP per Capita in Japan") fig.show()
(2) 散布図(Scatter Plot)
import plotly.express as px df = px.data.iris() fig = px.scatter(df, x="sepal_width", y="sepal_length", color="species") fig.show()
(3) 棒グラフ(Bar Chart)
import plotly.express as px df = px.data.tips() fig = px.bar(df, x="day", y="total_bill", color="sex", barmode="group") fig.show()
(4) 円グラフ(Pie Chart)
import plotly.express as px df = px.data.tips() fig = px.pie(df, names="day", values="total_bill", title="Total Bills by Day") fig.show()
(5) 箱ひげ図(Box Plot)
import plotly.express as px df = px.data.tips() fig = px.box(df, x="day", y="total_bill", color="sex") fig.show()
(6) ヒートマップ(Heatmap)
import plotly.express as px df = px.data.tips() fig = px.density_heatmap(df, x="total_bill", y="tip", nbinsx=20, nbinsy=20) fig.show()
(7) 3D 散布図(3D Scatter)
import plotly.express as px df = px.data.iris() fig = px.scatter_3d(df, x="sepal_length", y="sepal_width", z="petal_length", color="species") fig.show()
(8) アニメーション付きバブルチャート
import plotly.express as px df = px.data.gapminder() fig = px.scatter(df, x="gdpPercap", y="lifeExp", animation_frame="year", size="pop", color="continent", hover_name="country", log_x=True, size_max=60) fig.show()
(9) コレレーションマトリックス(散布行列)
import plotly.express as px df = px.data.tips() fig = px.scatter_matrix(df, dimensions=["total_bill", "tip", "size"], color="sex") fig.show()
(10) カスタム線グラフ(Graph Objects 使用)
import plotly.graph_objects as go import numpy as np x = np.linspace(0, 10, 100) y = np.sin(x) fig = go.Figure(go.Scatter(x=x, y=y, mode="lines", name="sin(x)")) fig.update_layout(title="Sin Wave", xaxis_title="x", yaxis_title="sin(x)") fig.show()
3. plotly
の主な機能
機能 | 説明 |
---|---|
plotly.express |
簡単な構文でグラフを作成できるモジュール |
graph_objects |
高度なカスタマイズが可能な構造的 API |
dash |
Web アプリケーションとして使えるダッシュボードツール |
まとめ
plotly
を使えば、視覚的に優れたグラフを短いコードで簡単に作成できます。プレゼン資料やダッシュボード、分析レポートの可視化に非常に役立ちます。ぜひ plotly
を使って、データをより魅力的に伝えましょう!