繪製多個變數

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 資料視覺化入門

自訂散佈圖

# 繪製成交量對波動度
scatter(
    qqq.volatility,
    qqq.volume,

title="QQQ Daily Traded Volume", xlabel="Daily Range (%)", ylabel="Volume",
# 隱藏圖例 label=false
# 更改標記顏色 markercolor=:ivory2 )

QQQ ETF 基金的每日成交量與波動度散佈圖。圖形顯示波動度越高,成交量越高。

常用顏色: :blue:red:green:yellow:black:gray:white

1 http://juliagraphics.github.io/Colors.jl/stable/namedcolors/
Julia 資料視覺化入門

驚嘆號記號法

# 繪製成交量對波動度
scatter(qqq.volatility,
    qqq.volume,
    label=false
    markercolor=:ivory2
)

# 加上標題與座標軸標籤 title!("QQQ Daily Traded Volume") xlabel!("Daily Range (%)") ylabel!("Volume")

QQQ ETF 基金的每日成交量與波動度散佈圖。圖形顯示波動度越高,成交量越高。

Julia 資料視覺化入門

相關性

  • 變數之間的關係

三張散佈圖顯示兩個變數呈現正相關、負相關與無相關,並各自帶有迴歸線。

Julia 資料視覺化入門

加入迴歸線

# 繪製成交量對波動度
scatter(qqq.volatility,
    qqq.volume,
    title="QQQ Daily Traded Volume"
    xlabel="Daily Range (%)",
    ylabel="Volume",
    label=false
    markercolor=:ivory2,

# 加上迴歸線 smooth=true,
# 自訂迴歸線 linewidth=2.5, linecolor=:magenta3, )

QQQ ETF 基金的每日成交量與波動度散佈圖,並加上迴歸線。迴歸線的正斜率表示成交量與波動度呈正相關。

Julia 資料視覺化入門

多條折線圖

# 繪製最高價與最低價
plot(
    qqq.price_date,
    # 傳入兩個變數
    [qqq.high qqq.low],

# 指定兩個標籤 label=["High" "Low"],
# 指定線寬 linewidth=[4 2] ) title!("QQQ Daily Prices") xlabel!("Date") ylabel!("Price")

QQQ 基金在 50 天期間的每日最高價與最低價折線圖,價格圍繞正向線性趨勢波動。

Julia 資料視覺化入門

不同方式繪製多圖

# 繪製最高價隨時間
plot(qqq.price_date,
    qqq.high,
    label="High",
    linewidth=4)

# 將最低價加入圖中 plot!(qqq50.price_date, qqq50.low, label="Low", linewidth=2) title!("QQQ Daily Prices") xlabel!("Date") ylabel!("Price")

QQQ 基金在 50 天期間的每日最高價與最低價折線圖,價格圍繞正向線性趨勢波動。

Julia 資料視覺化入門

小抄

  • label 設定或隱藏圖例

  • 驚嘆號記號法:修改目前的圖

  • 自訂 plot()

    • linewidth
    • linecolor
  • 自訂 scatter()

    • markercolor
    • smooth 加上迴歸線(用 linewidthlinecolor 客製迴歸線)→ 適合呈現相關性
Julia 資料視覺化入門

一起來練習吧!

Julia 資料視覺化入門

Preparing Video For Download...