Побудова графіків для кількох змінних

Вступ до візуалізації даних у 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 — додати регресійну пряму (linewidth, linecolor — налаштувати пряму) → зручно показує кореляцію
Вступ до візуалізації даних у Julia

Давайте потренуємось!

Вступ до візуалізації даних у Julia

Preparing Video For Download...