ジュリアプロットでの色の使用方法
概要
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