سؤال

لدي إعداد D3 باستخدام "العقد" و"الخطوط".عندما يظهر الرسم البياني لأول مرة، فإنه يرتد بالجاذبية حتى يستقر في المنتصف.هل يعرف أحد طريقة لإظهاره تلقائيًا في المنتصف دون تأثير نوع "الارتداد"؟

ملاحظة: أنا أستخدم تخطيط القوة

هل كانت مفيدة؟

المحلول

يؤدي استدعاء البدء إلى إعادة تعيين معلمة التبريد، ألفا؛يتحلل ألفا بشكل كبير مع تقارب التصميم مع الحل الخاص به، ثم يتوقف لتجنب إهدار وحدة المعالجة المركزية.لا يوجد أي اهتزاز عند البداية (بخلاف العقد المتزامنة، وهو أمر ضروري لتجنب القسمة على صفر).ومع ذلك، في أي وقت يكون لديك قوى متعارضة وقيود هندسية (روابط)، فمن الطبيعي أن تتوقع تعديل التخطيط عند البدء.

إذا كنت تريد تجنب هذا الارتداد، فأنت بحاجة إما إلى إبقاء الرسم البياني ساخنًا بشكل دائم (على سبيل المثال عن طريق الاتصال d3.timer(function() { force.resume(); })) أو ستحتاج إلى القيام بشيء آخر، مثل ضبط معلمة ألفا يدويًا لإعادة التسخين تدريجيًا بدلاً من إعادة التسخين بشكل فوري.

يحرر:في الإصدار 2.8.x، يمكنك تجنب الارتداد الأول تمامًا عن طريق تشغيل تخطيط القوة بشكل متزامن عند بدء التشغيل.على سبيل المثال: http://bl.ocks.org/1667139

نصائح أخرى

استراتيجية أخرى استخدمتها من قبل هي زيادة Radii تدريجيا من كل عقدة من الصفر عبر الأولى، على سبيل المثال، 50 أو 100 قوة القراد.يمكنك أن ترى ما يبدو وكأنه مثل (في البروتوفيس، لكنه سيتصرف بنفس الطريقة في D3) في خرائط الخفطوغرام Dorling على موقع بيانات One.org .

مرخصة بموجب: CC-BY-SA مع الإسناد
لا تنتمي إلى StackOverflow
scroll top