logo

ジュリアプロットでの色の使用方法 📂ジュリア

ジュリアプロットでの色の使用方法

概要

Juliaで色を便利に使うためのパッケージにはColors.jlがある。「Plots.jl」という視覚化パッケージを読み込めば一緒に使うことができる。

シンボルと文字列

名前がついた色のリストを確認する方法は、コンソールにColors.color_namesを入力するか、公式ドキュメントを確認することだ。

julia> using Plots

julia> Colors.color_names
Dict{String, Tuple{Int64, Int64, Int64}} with 666 entries:
  "darkorchid"      => (153, 50, 204)
  "chocolate"       => (210, 105, 30)
  "chocolate2"      => (238, 118, 33)
  "grey69"          => (176, 176, 176)
  "grey97"          => (247, 247, 247)
  "olivedrab3"      => (154, 205, 50)
  "deeppink2"       => (238, 18, 137)
  "mediumpurple2"   => (159, 121, 238)
  "ivory1"          => (255, 255, 240)
  ⋮                 => ⋮

色を指定できるキーワード引数には基本的にシンボルと文字列が使用できる。色名をシンボル、文字列で入力すれば、その色が反映される。入力するものが何であれ、Colors.parse(Colorant, 色名)に渡されるため、シンボルでも文字列でも結果は同じである。

julia> Colors.parse(Colorant, :red)
RGB{N0f8}(1.0,0.0,0.0)

julia> Colors.parse(Colorant, "red")
RGB{N0f8}(1.0,0.0,0.0)

様々なグラフに色を指定してみると、その結果は次のようになる。

plot(randn(50, 6),
    seriescolor = [:red :hotpink1 :purple3 "blue" "lime" "brown4"],
    seriestype = [:line :scatter :histogram :shape :sticks :steppre],
    layout = (3,2)
)

RGB

RGB色コードはcolorant"rgb(255, 0, 0)"で使用できる。rgb()には$[0, 255]$内の整数のみ入力できる。

julia> colorant"rgb(255, 0, 0)"           # rgb() notation with integers in [0, 255]
RGB{N0f8}(1.0,0.0,0.0)

julia> colorant"rgba(0, 0, 255, 0.5)"     # with alpha in [0, 1]
RGBA{N0f8}(0.0,0.0,1.0,0.502)

plot(rand(20, 2),
    seriescolor = [colorant"rgb(255, 0, 0)" colorant"rgba(0, 0, 255, 0.5)"],
    layout = 2
    )

RGB色コードを扱う詳細はこちらを参照。

HEX

6桁のHEXコードはcolorant"#FF0000"、3桁のHEXコードはcolorant"#00f"のように使用できる。

julia> colorant"#FF0000"    # 6-digit hex notation
RGB{N0f8}(1.0,0.0,0.0)

julia> colorant"#00f"       # 3-digit hex notation
RGB{N0f8}(0.0,0.0,1.0)

julia> plot(rand(20, 2),
           seriescolor = [colorant"#FF0000" colorant"#00f"],
           layout = 2
       )

HEX色コードを扱う詳細はこちらを参照。

環境

  • OS: Windows11
  • Version: Julia 1.9.4, Plots v1.39.0, Colors v0.12.10

一緒に見る