Plotly 積層エリアチャート
Ammar Ali
2022年4月1日
このチュートリアルでは、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