Vega
Vega — اسنیپتهای منتخب
پلی بین یه منبع دادهی واقعی و یه dataviz که رو پای خودش وایمیسته: تبدیل پاسخ یه aggregation از Elasticsearch/Kibana، یه ژورنال معاملات یا یه جریان رصدپذیری به یه اسپک Vega-Lite که خودش خودش رو رندر میکنه. نگاشت وفادار به شکلهای دادهی دنیای واقعی (باکتهای تودرتو، صدکها، moving_fn) و نسخههای کاربردی کامل — دراودان زیرآب، high-water mark، burn-rate برای SLO — که تو مستندات رسمی پیداشون نمیکنی.
20 اسنیپت منتخب
- چند سری: زیرتجمیع + ترنسفورم flattenالگوی ضروری برای کار با زیرتجمیع ES (date_histogram ← terms): باکتهای تودرتو رو با flatten مسطح کن و بعد کلید و مقدار رو با calculate بیرون بکش. باکتها توی قالب پاسخ ES و بهصورت inline اومدن.
- تأخیرهای P50/P95/P99: تجمیع percentiles + foldصدکها رو توی قالب پاسخ Elasticsearch (آبجکت lat.values) بیرون میکشه و بعد با fold به فرمت long تبدیلشون میکنه تا به ازای هر صدک یه خط رسم بشه — دادههای نمونه بهصورت inline.
- هموارسازی سمت سرور: پایپلاین moving_fnمیانگین متحرک به سبک پایپلاین moving_fn توی Elasticsearch، سوار بر متریک خام: این spec آبجکتهای avg_lat.value و smooth.value هر باکت رو میخونه — دادههای نمونه inline.
- نمودار scatter روی سندهای خام (hits.hits)به جای تجمیعها، خود سندهای منبع رو میخونه: هر سطر یه hit از ES رو بازتولید میکنه و فیلدها با calculate از _source بیرون کشیده میشن — سندهای نمونه inline.
- نرخ تغییرات: پایپلاین derivativeمشتق حجم بین باکتهای متوالی به سبک پایپلاین derivative توی Elasticsearch (آبجکت deriv.value، که توی اولین باکت null میشه)، رنگشده بر اساس علامت — باکتهای نمونه inline.
- pivot: از فرمت long به فرمت wideوارونهٔ fold: ترنسفورم pivot به ازای هر مقدار یه ستون میسازه و این امکان رو میده که نسبت بین دو سریای رو که توی سطرها انباشته بودن حساب کنی.
- Top N پویا: window rank + filterاول با window rank رتبهبندی میکنه و بعد روی رتبه فیلتر میذاره — الگوی تمیز برای اینکه با هر دیتاستی فقط N مورد نخست بمونه.
- نمودار Pareto (میلهها + درصد تجمعی)میلههای مرتبشده بهصورت نزولی و یه منحنی درصد تجمعی روی محور راست، که با window + joinaggregate محاسبه میشه — همون ابزار کلاسیک قانون 80/20.
- کندلاستیک ژاپنی (OHLC)خط low←high برای سایهها و میلهٔ open←close برای بدنه، با رنگی که به جهت کندل بستگی داره — یه نمودار قیمت کامل تو دو تا لایه.
- برچسبگذاری خودکار نقطهٔ بیشینهترنسفورم joinaggregate بیشینهٔ سراسری رو میاره، یه فیلتر سطر مربوطه رو جدا میکنه و یه لایهٔ point + text برجستهاش میکنه — حاشیهنویسی همراه دادهها حرکت میکنه.
- برچسب تهِ خط (جایگزین legend)یه window rank معکوس روی تاریخ، آخرین نقطهٔ هر سری رو جدا میکنه تا اسم سری بهش بچسبه — legend حذف میشه و خوانش مستقیم میشه.
- waterfall: تفکیک P&L ماهانههر میله بین یک شروع و یک پایانِ از پیش حسابشده (y/y2) شناوره و رنگش صعود، نزول یا جمع رو نشون میده — همون پل حسابداری کلاسیک بین دو تا مانده.
- radar تقریبی: پروفایل دو استراتژیVega-Lite مارک radar نداره: هر امتیاز رو با calculate (توابع cos/sin) به مختصات قطبی میبری و بعد چندضلعی رو با interpolate از نوع linear-closed میبندی.
- funnel: ریزش یک پایپلاین دادهیک قیف که با میلههای وسطچین ساخته شده: calculate مقادیر -volume/2 و +volume/2 رو توی x/x2 میسازه و یک لایهٔ text حجم رو وسط هر طبقه نشون میده.
- drawdown زیر آب: عمق زیر سقف equityهمون منحنی underwater کلاسیک ترید: یک ناحیهٔ قرمز گرادیانی فاصله تا سقف equity رو نشون میده، با یک خطچین و برچسب که روی بیشینهٔ drawdown لنگر انداختن.
- منحنی equity و high-water markخط فیروزهای equity حساب رو دنبال میکنه؛ خط خاکستری پلکانی هم سقف تاریخی رو که با یک window max تجمعی حساب شده میکشه — فاصلهٔ این دوتا تو یک نگاه معلومه.
- win rate غلتان روی 20 معاملهیک window mean سری دودویی برد/باخت رو به win rate غلتان تبدیل میکنه: منحنی فقط بعد از پر شدن پنجره شروع میشه (با filter) و با خط 50 درصد مقایسه میشه.
- MAE در برابر MFE: کیفیت اجرای معاملاتهر نقطه بیشینهٔ حرکت نامطلوب (MAE) رو با بیشینهٔ حرکت مطلوب (MFE) یک معامله مقایسه میکنه، رنگشده بر اساس نتیجه — MFE بالا پیش بازندهها لو میده که خروجها بدجا گذاشته شدن.
- waffle با ابعاد 5×8: توزیع نتایج معاملاتچهل مربع، یکی برای هر معامله: ترنسفورمهای calculate (باقیمانده و تقسیم صحیح) شبکه رو میسازن و رنگ معنایی، برندهها، بازندهها و معاملات break-even رو میشمره.
- burn rate برای SLO: پنجرههای 1h و 6hدو پنجرهٔ الگوی multi-window burn rate alerting (برگرفته از SRE workbook) روی یک نمودار، هرکدوم با یک خطچین برچسبدار با آستانهٔ بحرانی خودش مقایسه میشه.