Если вы хотите что-то с полки, посмотрите на График №
http://graphsharp.codeplex.com/
видео здесь:
Это делает динамическое расположение графиков и довольно прост в использовании.Существует выбор алгоритмов компоновки [см. Пример приложения], каждый из которых настраивается.
однако заполнение, пока область не «заполнится», не является чем-то, что будет работать из коробки.Хотя вы могли бы, например, создать график, выложить его, а затем измерить соотношение между размером вершины и размером всего графа, а затем добавлять или удалять вершины, пока не достигнете желаемой плотности.Я бы рискнул, что вы могли бы довольно быстро методом проб и ошибок придумать быстрый и грязный форум между размером заполненного холста и количеством вершин, которые вы должны добавить.
Обратите внимание, что вы можете довольно легко настроить шаблоны вершин для данных любого типа [это стандартный wpf, но примеры для Graph # можно найти в http://graphsharp.codeplex.com/discussions]
, еслиВы хотели бы написать свой собственный макет. Возможно, вы захотите взглянуть на некоторые методы, используемые в Graph # ... например, на компонент динамического масштабирования, источник которого доступен здесь: http://wpfextensions.codeplex.com/
надеюсь, это немного поможет