Fly, you fools!
Прикладна аналітика при розробці IT
КНУ імені Тараса Шевченка, ФІТ
Quarto — це науково–технічна видавнича система з відкритим кодом, яка ґрунтується на універсальному конверторі документів Pandoc та використовує мову розмітки Markdown.
Це універсальний інструмент для тих, хто пише на R
, Python
, Julia
та Observable JavaScript
.
Розробники Quarto хотіли використати ім’я, яке мало деяке значення в історії видавничої справи.
Вибір пав на Quarto (від латинського quārtō, скорочено Qto, 4to або 4º) — це формат книги або брошури в одну четвертину топографічного листа.
На кожній стороні листа при цьому поміщається 4 сторінки книги (8 сторінок на один лист).
Quarto являє собою текстовий документ спеціального формату .qmd
, який можна скомпілювати у різноманітні документи:
Для роботи з Quarto потрібно:
Встановити інтерфейс командного рядка Quarto (CLI) під актуальну операційну систему (Windows, Linux або Mac OS).
Встановити плагін для інтегрованого середовища розробки (IDE). На даний момент підтримуються:
Створити Quarto–проект можна декількома шляхами:
Створити Quarto–проект можна декількома шляхами:
File -> New File -> … або Ctrl+Win+Alt+N
Створити Quarto–проект можна декількома шляхами:
File -> New Project… -> New Directory
Спочатку Knitr
(для R
) або Jupyter
(для Python
або Julia
) виконує всі фрагменти коду .qmd
-файлу і створює новий markdown
(.md
) документ, який включає в себе код і всі його результати.
Далі .md
–файл оброблюється Pandoc
для перетворення у різноманітні формати файлів (HTML
, PDF
, Word
тощо).
Quatro документи складаються з трьох базових складових:
YAML–шапка знаходиться нагорі документу і відділена трьома дефісами (---
) зверху та знизу.
В ній зберігається мета–інформація документу: назва, дата створення, автор, інформація щодо роботи коду, контенту і процесу рендерінгу.
---
title: "Науково-видавнича система Quarto"
subtitle: "Мала академія наук України"
author: "Ігор Мірошниченко"
date: today
date-format: iso
institute: КНЕУ::ІІТЕ
language: _language-ukr.yml
format:
revealjs:
theme: [simple, custom.scss]
logo: img/logo.png
chalkboard: true
slide-number: true
toc: true
toc-title: ЗМІСТ
transition: fade
mouse-wheel: true
highlight-style: github
mainfont: metropolis
toc-depth: 1
editor: source
execute:
echo: true
jupyter: python3
---
Ця частина документу йде одразу після YAML–шапки і складає основну частину документу.
Markdown
— це популярна і зручна мова розмітки.
Ви непевно зустрічали її в README.md–файлах репозиторіїв GitHub
, а також у Telegram
–повідомленнях.
Зродились ми великої години
З пожеж війни і полум’я вогнів.
Плекав нас біль за долю України,
Зростив в нас гнів
і лють на ворогів!
\[ x = {-b \pm \sqrt{b^2-4ac} \over 2a} \]
Chunks
— це блоки, які відділяються від тексту потрійними зворотніми лапками ```
( анг. backtick) на початку та в кінці. У фігурних дужках вказується мова програмування на якій необхідно виконати код.
Fly, you fools!
Результат чанку за замовчування виводиться одразу після нього, але все це можна налаштувати.
import numpy as np
import pandas as pd
import matplotlib.pyplot as plt
x = np.arange(-4, 4, .012)
y = np.arange(-4, 4, .012)
X, Y = np.meshgrid(x, y)
Z = 1 - np.abs(X) - np.sin(Y**2)
W = 1 + Y - np.cos(X**2)
fig = plt.figure(figsize=(4, 4))
ax = fig.add_subplot(projection='polar')
plt.scatter(Z, W, alpha=.03, s=0.2)
plt.axis('off')
plt.show()
species | island | bill_length_mm | bill_depth_mm | flipper_length_mm | body_mass_g | sex | year | |
---|---|---|---|---|---|---|---|---|
0 | Adelie | Torgersen | 39.1 | 18.7 | 181.0 | 3750.0 | male | 2007 |
1 | Adelie | Torgersen | 39.5 | 17.4 | 186.0 | 3800.0 | female | 2007 |
2 | Adelie | Torgersen | 40.3 | 18.0 | 195.0 | 3250.0 | female | 2007 |
3 | Adelie | Torgersen | NaN | NaN | NaN | NaN | NaN | 2007 |
4 | Adelie | Torgersen | 36.7 | 19.3 | 193.0 | 3450.0 | female | 2007 |
... | ... | ... | ... | ... | ... | ... | ... | ... |
339 | Chinstrap | Dream | 55.8 | 19.8 | 207.0 | 4000.0 | male | 2009 |
340 | Chinstrap | Dream | 43.5 | 18.1 | 202.0 | 3400.0 | female | 2009 |
341 | Chinstrap | Dream | 49.6 | 18.2 | 193.0 | 3775.0 | male | 2009 |
342 | Chinstrap | Dream | 50.8 | 19.0 | 210.0 | 4100.0 | male | 2009 |
343 | Chinstrap | Dream | 50.2 | 18.7 | 198.0 | 3775.0 | female | 2009 |
344 rows × 8 columns