여러 변수 그리기

Julia로 시작하는 데이터 시각화

Gustavo Vieira Suñe

Data Analyst

데이터셋 살펴보기

  • Invesco QQQ Trust 과거 가격
price_date open high low close volume
2020-01-02 214.4 216.16 213.98 216.16 30969400
2020-01-03 213.3 215.47 213.28 214.18 27518900
2020-01-06 212.5 215.59 212.24 215.56 21655300

 

  • 변동성 정의
qqq[!, "volatility"] =  100 * (qqq.high - qqq.low) ./ qqq.open
Julia로 시작하는 데이터 시각화

산점도 커스터마이즈

# Plot volume versus volatility
scatter(
    qqq.volatility,
    qqq.volume,

title="QQQ Daily Traded Volume", xlabel="Daily Range (%)", ylabel="Volume",
# Hide the legend label=false
# Change marker color markercolor=:ivory2 )

QQQ ETF의 변동성 대비 일일 거래량 산점도. 변동성이 증가하면 거래량도 증가함을 보여줌.

자주 쓰는 색상: :blue, :red, :green, :yellow, :black, :gray, :white

1 http://juliagraphics.github.io/Colors.jl/stable/namedcolors/
Julia로 시작하는 데이터 시각화

느낌표 표기법

# Plot volume versus volatility
scatter(qqq.volatility,
    qqq.volume,
    label=false
    markercolor=:ivory2
)

# Add title and axis labels title!("QQQ Daily Traded Volume") xlabel!("Daily Range (%)") ylabel!("Volume")

QQQ ETF의 변동성 대비 일일 거래량 산점도. 변동성이 증가하면 거래량도 증가함을 보여줌.

Julia로 시작하는 데이터 시각화

상관관계

  • 변수 간 관계

두 변수가 양의 상관, 음의 상관, 무상관을 보이는 세 개의 산점도. 각 그래프에 회귀선이 표시됨.

Julia로 시작하는 데이터 시각화

회귀선 추가하기

# Plot volume versus volatility
scatter(qqq.volatility,
    qqq.volume,
    title="QQQ Daily Traded Volume"
    xlabel="Daily Range (%)",
    ylabel="Volume",
    label=false
    markercolor=:ivory2,

# Add regression line smooth=true,
# Customize regression line linewidth=2.5, linecolor=:magenta3, )

QQQ ETF의 변동성 대비 일일 거래량 산점도와 회귀선. 회귀선의 양의 기울기는 거래량과 변동성의 양의 상관을 나타냄.

Julia로 시작하는 데이터 시각화

다중 선 그래프

# Plot high and low prices
plot(
    qqq.price_date,
    # Pass both variables
    [qqq.high qqq.low],

# Assign both labels label=["High" "Low"],
# Assign widths linewidth=[4 2] ) title!("QQQ Daily Prices") xlabel!("Date") ylabel!("Price")

50일 기간 동안 시간에 따른 QQQ의 일별 고가와 저가 선 그래프. 가격은 양의 선형 추세 주위로 변동함.

Julia로 시작하는 데이터 시각화

다른 방식의 다중 그래프

# Plot high price versus time
plot(qqq.price_date,
    qqq.high,
    label="High",
    linewidth=4)

# Add low prices to the figure plot!(qqq50.price_date, qqq50.low, label="Low", linewidth=2) title!("QQQ Daily Prices") xlabel!("Date") ylabel!("Price")

50일 기간 동안 시간에 따른 QQQ의 일별 고가와 저가 선 그래프. 가격은 양의 선형 추세 주위로 변동함.

Julia로 시작하는 데이터 시각화

치트시트

  • 범례 설정/숨김: label

  • 느낌표 표기: 현재 그래프 수정

  • plot() 커스터마이즈

    • linewidth
    • linecolor
  • scatter() 커스터마이즈

    • markercolor
    • smooth로 회귀선 추가 (linewidth, linecolor로 회귀선 설정) → 상관관계 표시에 유용
Julia로 시작하는 데이터 시각화

연습해 봅시다!

Julia로 시작하는 데이터 시각화

Preparing Video For Download...