줄리아에서 곡선에서부터 특정한 값까지/두 곡선 사이/폐곡선 내부 색칠하는 방법

줄리아에서 곡선에서부터 특정한 값까지/두 곡선 사이/폐곡선 내부 색칠하는 방법

특정한 값까지 칠하기1

plot()의 속성으로 fillrange=a, fillalpha=b, fillcolor=:color를 사용하면, 플랏된 곡선에서부터 값 a까지 :color색깔을 b의 투명도로 칠한다. fill=(a,b,:color)로 써도 같은 기능을 한다. 즉 다음의 두 코드는 같다.

plot(x,y, fillrange=a, fillalpha=b, fillcolor=:color)
plot(x,y, fill=(a,b,:color))

버그인 것 같은데 fillrange의 값을 $(0,1)$에서 선택하면 색칠이 되지 않는다.

1.svg

using Plots

random_walk = cumsum(rand(20).-.5)

p1 = plot(random_walk,fill=(1,0.2,:lime), lw=3, legend=:bottomright)
p2 = plot(random_walk,fill=(2,0.2,:tomato), lw=3, legend=:bottomright)
plot(p1, p2)

두 곡선 사이 칠하기

fillalpha의 값으로 한 쪽 곡선의 함숫값을 넣으면 두 곡선 사이가 색칠된다.

2.svg

rw = random_walk

plot([rw rw.+1],fill=(rw.+1,0.2,:lime), lw=3, legend=:bottomright)

폐곡선 내부 칠하기

fillalpha의 값을 $(0,1)$에서만 택하지 않으면 내부가 색칠된다.

3.svg

theta = range(0,2pi, length=40)
x = cos.(theta)
y = sin.(theta)

plot(x, y, fill=(1,0.2,:lime), xlim=(-3,3), ylim=(-1.5,1.5), size=(800,400), lw=3)

환경


  1. http://docs.juliaplots.org/latest/attributes/#fill ↩︎

댓글