줄리아 Plots에서 컬러 그래디언트 사용하는 법법
설명
컬러 그래디언트color gradient란 줄리아의 시각화 패키지인 Plots.jl가 지원하는 두 색 체계color scheme 중 하나로 (나머지는 팔레트이다), 우리가 흔히 그라데이션gradation이라 부르는 것과 같다. 즉 쉽게 말해 그라데이션이 구현된 타입이 ColorGradient이다.
그래디언트는 heatmap(), surface(), contour() 등의 도표를 그리는 데 쓰인다. 여러 그래프의 색깔을 서로 달리하고 싶을 땐 그래디언트가 아니라 팔레트를 사용한다.
코드
심볼
cgrad(심볼)로 사용할 수 있다. 기본 그래디언트는 cgrad(:inferno)이며, 색깔은 다음과 같다.
using Plots
cgrad(:inferno)
heatmap(reshape(1:25, (5, 5)))

Plots.jl에 미리 정의되어있는 팔레트와 그래디언트는 공식 문서에서 확인할 수 있다. (패키지 ColorSchemes.jl의 공식 문서에서 더 다양한 팔레트와 그래디언트를 찾아볼 수 있다.)

파이썬의 matplotlib에서 imshow의 기본 컬러맵과 같은 그래디언트는 :viridis이다.
heatmap(reshape(1:25, (5, 5)), fillcolor = cgrad(:viridis))

직접 정의
cgrad([시작색, 끝색])으로 직접 팔레트를 정의할 수 있다. 색깔이 변환되는 지점을 설정하려면 옵션 인수로 $0$과 $1$ 사이의 값을 원소로 갖는 벡터를 입력하면 된다.
cgrad([:blue, :orange])
cgrad([:blue, :orange], [0.1, 0.9])
cgrad([:blue, :orange], [0.5, 0.50001])
키워드
rev
키워드 인수로 rev = true를 입력하면 순서가 바뀐다.
cgrad(:darktest)
cgrad(:darktest, rev = true)
scale
키워드 scale은 그래디언트의 스케일을 지정한다. :log 혹은 :exp를 입력할 수 있다.
cgrad(:rainbow)
cgrad(:rainbow, scale = :log)
cgrad(:rainbow, scale = :exp)
환경
- OS: Windows11
- Version: Julia 1.9.4, Plots v1.39.0

저희들의 저서 「줄리아 프로그래밍」이 2024 세종도서 학술부문에 선정되었습니다!

