Home > 記事 > Python > Plotly > 【Plotly】PlotlyExpressでトレンドラインを描画する

記事

【Plotly】PlotlyExpressでトレンドラインを描画する

今回は離散図にトレンドラインを描画してみます。

目次

  1. 準備
  2. 線形回帰
  3. trendlineオプション
  4. まとめ

準備

グラフで回帰直線を描画するにはStatsmodelsをインストールしておく必要があります。

pip install statsmodels

もしplotlyとpandasをインストールしていない場合にはインストールしておいてください。

pip install plotly pandas

↑目次

線形回帰

最小二乗回帰、もしくは線形回帰と呼ばれる方法です。プロットと直線の距離の二乗が最小になる直線を求めます。散布図でtrandline='ols'を指定することで最小二乗法を用いた回帰直線を簡単に描画することができます。

# -*- coding: utf-8 -*-
import plotly.express as px
import pandas as pd

data=[
    ['東京',13921,106238222]
    ,['大阪',8809,40069967]
    ,['愛知',7552,40299791]
    ,['神奈川',9198,35589833]
    ,['福岡',5112,19679224]
]
columns=['都道府県','人口','都道府県内総生産']
df=pd.DataFrame(data,columns=columns)
fig = px.scatter(df,x='人口',y='都道府県内総生産',trendline='ols',trendline_color_override='darkblue',size='人口')
fig.show()

実行結果

ordinary-least-square

↑目次

trendlineオプション

plotly.express packageを読んで見たところ、現在指定可能なplotlyの指定可能なtrendlineオプションは以下の2つしかななさそう。

trendline 意味 説明
ols 線型回帰 直線回帰する(最小二乗法)
lowess 局所回帰 局所的な点の数を指定し局所点内での回帰曲線を描く

もっと色々な回帰を用いる場合にはscikit-learnというライブラリを用いて回帰曲線を直に描画する必要があるようです(ML Regression)。

↑目次

まとめ

今回はPlotlyExpressを用いた回帰線の描き方についてみてみました。回帰直線&曲線は奥が深いので少しずつ取り扱ってゆければとおもいます。

↑目次

Comment on this article

コメントはまだありません。

Send comments

必須
必須  
※ メールアドレスは公開されません
任意
必須
Loading...  Please enter the letters of the image