Plotly 積層エリアチャート

Ammar Ali 2022年4月1日
Plotly 積層エリアチャート

このチュートリアルでは、Plotly の scatter() 関数の stackgroup パラメーターを使用して積み上げ面グラフを作成する方法について説明します。

Plotly 積層エリアチャート

積み上げ面グラフには、異なるデータフレームの複数の領域が含まれています。scatter() 関数の stackgroup() パラメーターを使用して、同じグラフに複数の領域をプロットできます。

散布図を作成した後、同じ図にデータを追加する add_trace() 関数を使用して別の領域を追加できます。

たとえば、ランダムデータを使用して散布図を作成し、add_trace() 関数を使用して別の領域を追加してみましょう。以下のコードを参照してください。

import plotly.graph_objects as go

x = [1, 2, 3, 4]
plot = px.Figure(
    go.Scatter(name="Data One", x=x, y=[100, 200, 500, 673], stackgroup="one")
)

plot.add_trace(
    go.Scatter(name="Data Two", x=x, y=[56, 123, 982, 213], stackgroup="one")
)

plot.show()

出力:

積み上げはランダムデータのチャートです

groupnorm 引数を使用してグラフの正規化を変更し、その値をスタックグループの合計のパーセントに設定することもできます。

たとえば、正規化された値を使用して上記のグラフをプロットしてみましょう。以下のコードを参照してください。

import plotly.graph_objects as go

x = [1, 2, 3, 4]
plot = px.Figure(
    go.Scatter(
        name="Data One",
        x=x,
        y=[100, 200, 500, 673],
        stackgroup="one",
        groupnorm="percent",
    )
)

plot.add_trace(
    go.Scatter(name="Data Two", x=x, y=[56, 123, 982, 213], stackgroup="one")
)

plot.show()

出力:

積み上げは正規化された値のグラフです

add_trace() 関数を使用して、作成後に散布図に別の領域を追加できます。それでも、変数内にデータを保存し、その変数を使用してスタック領域プロットをプロットすることにより、図を作成するときにそれを行うこともできます。

たとえば、積み上げ面積プロットをもう一度作成してみましょう。以下のコードを参照してください。

import plotly.graph_objects as go

x = [1, 2, 3, 4]
data = [
    go.Scatter(name="Data One", x=x, y=[100, 200, 500, 673], stackgroup="one"),
    go.Scatter(name="Data Two", x=x, y=[56, 123, 982, 213], stackgroup="one"),
]

plot = px.Figure(data)
plot.show()

出力:

ランダムデータの積上げ面積図

著者: Ammar Ali
Ammar Ali avatar Ammar Ali avatar

Hello! I am Ammar Ali, a programmer here to learn from experience, people, and docs, and create interesting and useful programming content. I mostly create content about Python, Matlab, and Microcontrollers like Arduino and PIC.

LinkedIn Facebook

関連記事 - Plotly Plot