Reflex, XY'yi Açık Kaynak Olarak Yayınladı: 100 Milyon Noktalı Grafikleri Etkileşimli Tutan Rust Destekli Python Grafik Kütüphanesi
Reflex AI, etkileşimli 2B görselleştirme için Apache-2.0 lisanslı bir Python grafik kütüphanesi olan XY'yi yayınladı. Yerel bir Rust çekirdeği ve WebGL2 kullanarak grafikleri 100 milyon noktada bile duyarlı tutar ve yaklaşık 0,08 saniyelik işleme sürelerine ulaşır. Kütüphane, pip install xy ile kullanılabilir ve Python 3.11 veya daha yenisini gerektirir.
Reflex AI, Apache-2.0 lisanslı, etkileşimli 2D görselleştirme için Python tabanlı XY grafik kütüphanesini açık kaynak olarak yayınladı. Kütüphane, satır başına bir çizilebilir nesne oluşturan ve birkaç yüz bin noktadan sonra yavaşlayan geleneksel Python grafik yığınlarının performans düşüşünü ele alıyor. XY, işleme işini yerel bir Rust çekirdeğine taşıyor, JSON yerine tarayıcıya tür belirtilmiş ikili arabellekler gönderiyor ve WebGL2 ile çizim yapıyor. Kıyaslama sonuçları, XY'nin 10.000 noktada 0,071 saniye ve 100 milyon noktada 0,081 saniye işleme süresi koruduğunu gösteriyor. Kütüphane erken alfa aşamasında (sürüm 0.0.1) ve pip install xy ile kuruluyor, Python 3.11 veya daha yenisini gerektiriyor. İşaretler, eksenler, açıklamalar, araç ipuçları ve ek açıklamaların bildirimsel kompozisyonunu sunuyor ve dağılım, çizgi, alan, histogram, kutu, keman, ECDF, ısı haritası, hexbin ve kontur dahil olmak üzere 14 grafik ailesiyle birlikte geliyor. Kütüphane, Python ColumnStore'da tam f64 sütunlarını tutarak, üzerine gelme, seçim ve yakınlaştırma detaylandırmasının orijinal satırları döndürmesini sağlıyor. XY, 10 milyon noktalı etkileşimli bir dağılım grafiğini, Plotly için 259 MiB'ye kıyasla 258 KiB HTML'ye aktarıyor. Apple M5 Pro üzerinde yapılan bir kıyaslama, XY'nin 1M noktada 0,084 s, 10M'de 0,083 s, 50M'de 0,076 s ve 100M'de 0,081 s olduğunu gösterirken, Matplotlib ve Plotly daha yüksek sayılarda başarısız oluyor veya önemli ölçüde yavaşlıyor. Reflex ayrıca 10 milyar noktalık tam OpenStreetMap veri kümesini işlediğini bildiriyor. Kütüphane bir geçiş yolu içeriyor: import xy.pyplot as plt, yaygın Matplotlib pyplot kodunu çalıştırıyor ve bir reflex-xy adaptörü, JavaScript veya iframe olmadan grafikleri Reflex bileşenlerine dönüştürüyor.
Kaynak: MarkTechPost —
orijinal
