줄리아 Plots에서 색깔 사용하는 방법
개요
줄리아에서 색깔을 편리하게 사용할 수 있도록 도와주는 패키지는 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