色のカスタマイズ

Pythonで学ぶPlotlyによるデータ可視化入門

Alex Scriven

Data Scientist

カスタマイズの基本

 

カスタマイズ方法:

  1. 作成時、対応引数(例: color)を使う
  2. 作成後に update_layout() を使う
    • 辞書を渡す
    • fig.update_layout({"title":{"text":"A New Title"}})
Pythonで学ぶPlotlyによるデータ可視化入門

なぜ色をカスタマイズするか

 

色をカスタマイズすると次が可能:

  1. 見栄えを良くする
  2. 洞察を伝える
    • この散布図では色が3つ目の次元を示す

   

種を色で表す散布図

Pythonで学ぶPlotlyによるデータ可視化入門

色の基礎

 

コンピュータは色を RGB で表します:

  • RGB = 3桁のコード(各0〜255)で Red, Green, Blue を混合
    • (0,0,255) は青、(255,255,0) は黄

$$

$$

詳しくはこの記事をご覧ください

RGB色例の表

Pythonで学ぶPlotlyによるデータ可視化入門

plotly.express で色を指定

 

  • color 引数(DataFrame の列)
    • 各カテゴリに色が(自動で)割り当てられる
    • 数値列にはカラースケールを使用

 

fig = px.bar(data_frame=student_scores, 
      x="student_name", 
      y="score", 
      title="Student Scores by Student"
      color="city")
fig.show()
Pythonで学ぶPlotlyによるデータ可視化入門

使った色の内訳

変更前のプロット:

色なしの棒グラフ

変更後のプロット:

色付きの棒グラフ

Pythonで学ぶPlotlyによるデータ可視化入門

単変量プロットでの色

 

plotly.expresscolor 引数を単変量(棒、ヒストグラム)で使う:

  • ヒストグラム — 積み上げ棒
  • ボックスプロット — 複数プロットを生成

色付きの積み上げヒストグラム

色付きの並列ボックスプロット

Pythonで学ぶPlotlyによるデータ可視化入門

plotly.express で特定の色を指定

 

  • color_discrete_map: カテゴリ値を色に対応付ける辞書
  • 基本色は文字列("red", "green" など)でも指定可
Pythonで学ぶPlotlyによるデータ可視化入門

特定色の指定

$$

fig = px.bar(
    data_frame=student_scores, 
    x="student_name", y="score", 
    title="Student Scores by Student",

color_discrete_map={ "Melbourne": "rgb(0,0,128)", "Sydney": "rgb(235, 207, 52)"},
color="city")

 

指定色の棒グラフ

Pythonで学ぶPlotlyによるデータ可視化入門

plotly.express のカラースケール

 

  • 単一カラースケール(薄緑→濃緑)

緑のカラースケール

  • ブレンド勾配(緑→青)

$$

  • カラースケールは color_continuous_scale 引数で指定

緑青のカラースケール

Pythonで学ぶPlotlyによるデータ可視化入門

組み込みカラースケールを使用

 

fig = px.bar(data_frame=weekly_temps, 
    x="day", y="temp", 
    color="temp",
    color_continuous_scale="inferno")
fig.show()

 

$$

 

inferno カラースケールの棒グラフ

Pythonで学ぶPlotlyによるデータ可視化入門

独自のカラーレンジを作成

 

  • カスタムカラースケール(黄→橙→赤)
my_scale=[("rgb(242, 238, 10)"),
          ("rgb(242, 95, 10)"), 
          ("rgb(255,0,0)")]

fig = px.bar(data_frame=weekly_temps, x="day", y="temp",
color_continuous_scale=my_scale, color="temp")

 

自作カラースケールの棒グラフ

Pythonで学ぶPlotlyによるデータ可視化入門

Let's practice!

Pythonで学ぶPlotlyによるデータ可視化入門

Preparing Video For Download...