[التثبيت] [استخدام] [دليل المستخدم] [أمثلة] [مرجع API]
⚡ Datoviz عبارة عن مكتبة تصور البيانات العلمية عالية الأداء منظمة GPU ، مفتوحة المصدر وعالي الأداء مكتوبة في C/C ++ أعلى واجهة برمجة تطبيقات Khronos Vulkan ومكتبة نافذة GLFW . يوفر روابط ctypes الخام في بيثون؟ . على المدى الطويل ، سيتم استخدام Datoviz في الغالب كوجود خلفي Vispy 2.0 .
تم تصميمه للسرعة والجودة المرئية وقابلية التوسع إلى مجموعات البيانات التي تضم ملايين النقاط ، وهي تدعم التقديم التفاعلي ثنائي الأبعاد/ثلاثي الأبعاد والحد الأدنى من واجهة المستخدم الرسومية عبر عزيزي Imgui.
؟ خريطة الطريق. على المدى المتوسط: زيادة توافق نظام التشغيل وتوافق الأجهزة ، وتوفير المزيد من الصور المرئية ، وأنماط التفاعل ، وعناصر التحكم في واجهة المستخدم الرسومية. على المدى الطويل: الاختيار ، الصور المخصصة والتظليلات ، التحويلات غير الخطية ، توافق WebGPU/Webassembly ، التكامل مع Ipython و Jupyter و QT.
الاعتمادات: الماوس حجم الدماغ: Allen SDK. فرنسا: الأرض الطبيعية. الجزيء: التركيب البلوري لـ S. pyogenes Cas9 من PDB (بفضل ERIC للتحويل إلى شبكة OBJ). الأرض: Pixabay. مؤامرة نقطية: IBL. الدماغ البشري ثلاثي الأبعاد: Anneke Alkemade et al. 2020 ، بفضل بيير لويس بازين وجوليا هونتنبرغ.
من المقرر حاليًا هذه الميزات لـ V0.3 :
من المقرر حاليًا هذه الميزات لـ V0.4 وبعد ذلك :
متطلبات:
ملاحظة : لم تعد بحاجة إلى تثبيت Vulkan SDK أو لإنشاء المكتبة يدويًا. تم تحميل العجلات المسبقة لـ Linux و Windows و MacOS إلى PYPI.
pip install datovizمثال مؤامرة مبعثر بسيط (نقاط ذات مواضع عشوائية وألوان وأحجام) في بيثون ، والتي تتبع عن كثب واجهة برمجة تطبيقات C.
import numpy as np
import datoviz as dvz
app = dvz . app ( 0 )
batch = dvz . app_batch ( app )
scene = dvz . scene ( batch )
figure = dvz . figure ( scene , 800 , 600 , 0 )
panel = dvz . panel_default ( figure )
dvz . panel_panzoom ( panel )
visual = dvz . point ( batch , 0 )
n = 100_000
dvz . point_alloc ( visual , n )
pos = np . random . normal ( size = ( n , 3 ), scale = .25 ). astype ( np . float32 )
dvz . point_position ( visual , 0 , n , pos , 0 )
color = np . random . uniform ( size = ( n , 4 ), low = 50 , high = 240 ). astype ( np . uint8 )
dvz . point_color ( visual , 0 , n , color , 0 )
size = np . random . uniform ( size = ( n ,), low = 10 , high = 30 ). astype ( np . float32 )
dvz . point_size ( visual , 0 , n , size , 0 )
dvz . panel_visual ( panel , visual , 0 )
dvz . scene_run ( scene , app , 0 )
dvz . scene_destroy ( scene )
dvz . app_destroy ( app )تحقق من أمثلة وثائق لمزيد من أمثلة الاستخدام.
في عام 2012 ، تعاون مطورو مكتبات التصور العلمي في GPU (Galry ، Glumpy ، Pyqtgraph ، Visvis) لإنشاء Vispy ، وهي مكتبة تصور علمية مقرها OpenGL للبيثون.
في عام 2015 ، تم الإعلان عن فولكان ، خليفة OpenGL ، من قبل Khronos ، مما أثار فكرة مكتبة التصور المستقبلية في فولكان.
في عام 2019 ، بدأ سيريل روسانت ، أحد مطوري Vispy الأصليين ، في تجربة Vulkan.
في عام 2021 ، تم إصدار أول إصدار تجريبي من Datoviz V0.1 . وضع هذا الإصدار الأولي الأساس لمزيد من التطوير.
على مدار السنوات الثلاث المقبلة ، نضجت التكنولوجيا ، بمساعدة منحة مبادرة تشان زوكربيرج (CZI) الممنوحة لـ Vispy في عام 2021 .
في عام 2024 ، يتم إصدار Datoviz v0.2 . تتم إعادة تصميم هذا الإصدار من الألف إلى الياء لتعزيز النموذج والاستقرار ، مما يضمن أن يتمكن من مواكبة التطورات المستمرة في أجهزة GPU وآبار واجهات برمجة التطبيقات لتقديم الرسومات. إنه يتميز ببنية معيارية تسمح بنقل تقنية Datoviz إلى بيئات غير فولكان ، مثل متصفحات الويب التي تدعم WebGPU (بفضل منحة CZI الثانية).
يرتبط Datoviz ارتباطًا وثيقًا بـ Vispy ، حيث يتم تطويره من قبل أحد الأساسيين Vispy. سيقدم Vispy 2.0 ، الذي بدأه Cyrille Rossant و Nicolas Rougier ، واجهة برمجة تطبيقات علمية عالية المستوى أعلى من Datoviz و Matplotlib وغيرها من العارضين عبر طبقة تصور متوسطة المستوى مشتركة تسمى "بروتوكول خادم الرسومات (GSP)".
إن الرؤية طويلة الأجل هي لتصور علمي ثنائي الأبعاد/3D المستند إلى GPU عالي الأداء ليكون متاحًا بشكل موحد عبر منصات متعددة ، وبيئات (سطح المكتب ، ويب ، وتصور عن بُعد على أساس السحابة) ، ولغات البرمجة (C/C ++ ، Python ، Julia ، Rust ، إلخ).
انظر الملاحظات المساهمة.
انظر رخصة معهد ماساتشوستس للتكنولوجيا.
تم تطوير Datoviz بواسطة Cyrille Rossant في مختبر الدماغ الدولي ، وهو اتحاد لمختبرات أبحاث علم الأعصاب في جميع أنحاء العالم.
يتم تمويله بشكل خاص من قبل برنامج Chan Zuckerberg Praite Open Source للعلوم.