سؤال

أنا استخدم يونغ لرسم الرسوم البيانية. أدناه هو رسم بياني بسيط مع تخطيط الأشجار يبدو جيدا. جميع المصادرين والمحولات هي الافتراضي.

نص Alt http://czuk.eu/stackoverflow/ballon_layout_default_size.png.

الآن، لقد غيرت الحجم الافتراضي للعقد إلى 100PX عن طريق إعداد مخصص VertexShapeTransformer. وبعد المشكلة هي أن العقد بدأت تتداخل. هنا يمكنك أن ترى كيف تبدو:

نص Alt http://czuk.eu/stackoverflow/ballon_layout_size_100px.png.

هل من الممكن التخلص من قمة الرأس؟ هل هي مسألة تخطيط أو نوع من تحول الشكل؟

شكرا لكم مقدما على أي اقتراحات :-)

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

المحلول

بعد عدم التحقيق الطويل، اكتشفت أن هناك سمات ثابتة مسؤولة عن تحديد الحد الأدنى للمسافات بين القوالب. وهذه هي TreeLayout.DEFAULT_DISTX و TreeLayout.DEFAULT_DISTY. وبعد لسوء الحظ، تحدد هذه الصفات مسافة أدنى ثابتة بين السدود ولكن لا تفكر في الحجم الحقيقي لكل قمة قد تختلف. الإعداد صالح ل TreeLayout و ال BalloonLayout الذي يمتد TreeLayout.

أنا أيضا يحاول تخطيطا آخر ولكن لم أتمكن من العثور على حل تناظرية. هذه المشكلة هي لسؤال آخر ؛-)

نصائح أخرى

عند إنشاء TreeLayout يمكنك تحديد TreeLayout.DEFAULT_DISTX و TreeLayout.DEFAULT_DISTY في المنشئ:

TreeLayout treeLayout = new TreeLayout<String,Integer>(graph,100,100);

ربما تحتاج إلى وضع مسافة أكبر بين العقد؟ لقد بدأت بمسافة معينة مع عقد حجما معينة. عند زيادة حجم العقدة، قمت بتخفيض المسافة بينهما، لتعويض المسافة الإضافية التي يجب وضعها بين العقد لإبقائها من التداخل.

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