Бібліотека графіків .NET навколо? [зачинено]


92

Я шукаю бібліотеки графіків для .net. Чи є якісь вихідні?

ps: Я маю на увазі бібліотеки GRAPH, а не бібліотеки графіки та графіків!

редагувати: Я маю на увазі графіки з теорії графіків: (джерело: sourceforge.net )текст заміщення

Мені це також потрібно, щоб мати можливості малювання.


Можливо, це може бути корисним: github.com/komorra/NodeEditorWinforms
Коморра

Здається, посилання на зображення порушено (воно зараз перенаправляє на щось інше)
UuDdLrLrSs

Відповіді:


44

Використовуйте комбінацію QuickGraph ( GitHub , CodePlex ) та Graph # для WPF ( GitHub fork , CodePlex ) - обидві першокласні бібліотеки. Вони працюють дуже добре для мене, але документація для Graph # майже не існує.


16

Я працюю в команді NDepend, і ми перейшли з GraphViz на MsAgl ( Microsoft Automatic Graph Layout ) у вересні 2008 року. Ліцензія MsAgl дозволяє комерційне використання. Ось кілька зразків зображень графіків MsAgl, інтегрованих у NDepend (все інтерактивне, вузли рухомі / вибираються / знімні / клікабельні, краї можна редагувати / вибирати / знімні / клікабельні, макет можна масштабувати, а також, хоча він може бути чистішим API MsAgl досить чистий для роботи):

введіть тут опис зображення введіть тут опис зображення введіть тут опис зображення


Також можна грати з AGL на сайті rise4fun.com/Agl і бачити графіки інших там на rise4fun.com/rest/samples/rss/Agl
Джордж Бірбіліс

2
Зверніть увагу, що MSAGL тепер є OpenSource за ліцензією MIT на GitHub: github.com/Microsoft/automatic-graph-layout і, схоже, зберігається, оскільки нещодавно було виправлено деяке виправлення версії Silverlight
Джордж Бірбіліс,

Що стосується спроби AGL на сайті Rise4Fun, про який я вже згадав, можливо, це простий варіант мозкового штурму, але ви вводите графік лише там, де текст, а мітки, які ви використовуєте для вузлів, використовуються як ідентифікатори в цьому синтаксисі тексту, тому, я думаю, ви не може мати вузол з однаковою міткою (скажімо, Хаус) у двох місцях на графіку. Здається, ви також можете використовувати мітки для країв графіка (для посилань), використовуючи синтаксис, показаний на rise4fun.com/Agl/fsm (натисніть кнопку PLAY там, а потім прокрутіть вниз, щоб побачити, який графік генерується)
Джордж Бірбіліс,

Де я можу завантажити стабільну двійкову версію? Я не хочу будувати кожне джерело невідомої якості.
і я впевнений, що мені не вистачає

Думаю, тут github.com/Microsoft/automatic-graph-layout не впевнений, чи включена двійкова версія
Патрік з команди NDepend

12

Коли моє попереднє повідомлення буде видалено, я спробую дати більш складну відповідь на питання. Найвища відповідь вже не зовсім актуальна, оскільки бібліотека Graph # сильно застаріла.

Я порекомендую перевірити поєднання GraphX і Quickgraph . GraphX ​​як механізм візуалізації та Quickgraph як компонент управління графіками та математичної роботи.

Бібліотека GrpahX кодована для WPF 4.0 та METRO. Він надає безліч функцій, яких не вистачає Graph #:

  • Покращена продуктивність візуалізації для великих графіків
  • Підтримка фрезерування та комплектування країв, багато інших варіантів краю
  • Покращений контроль масштабування, який підтримує вікно огляду та вибір декількох вершин
  • Багата документація та зразки

Також GraphX ​​підтримує всі оригінальні алгоритми макетування з Graph #. Якщо у вас виникли запитання, відвідайте веб-сайт http://panthernet.ru/forum !


Посилання GraphX ​​мертве.
xabush

Ні, просто мали серйозні проблеми з вірусами на хостингу. Форуми онлайн.
Олександр Смирнов

9

Існує QuickGraph , він працює досить добре і має більшість основних алгоритмів.


Гарно, але, здається, не вміє малювати графіки.
пожираний елізій

2
Правда. У мене склалося враження, що ви запитуєте про обчислення графіків, а не про їх малювання. Однак він видає формати, споживані кількома різними інструментами візуалізації.
Дуг МакКлін

5

Погляньте на yWorks: http://www.yworks.com/en/index.html

З того, що я бачив, немає величезної кількості хороших бібліотек.


1
Здається дивовижним, але 7k для бібліотеки - це занадто багато для мене.
пожираний елізій

дивно, але це один з дешевих варіантів!
AS

1
Це 7 тисяч, але я коли-небудь отримував більше задоволення від API, ніж бібліотеки yWorks .NET та WPF.
Метью Растон,

5

Ви можете використовувати API NodeXL з Microsoft Research по адресою: http://www.codeplex.com/NodeXL але подібне питання було поставлене на: /programming/44090/do-you-know-any -графа-візуалізація-бібліотеки-для-мережі /


Звучить приємно, але з того, що я побачив зараз на їх прикладах, здається, що ви в основному повинні намалювати все самостійно, що було б проблемою, оскільки у мене є тисячі вузлів для малювання.
пожираний елізій

Я не зовсім впевнений, що ви маєте на увазі під словом `` намалювати все самостійно '', NodeXL є одночасно розширенням для Excel, але також API для .Net, і він підтримує алгоритми макетів графіків, як силовий макет (Fruchterman-Reingold або Harel-Koren швидкий багатомасштабний) або геометричний макет (коло, сітка, спіраль тощо). Я сам цим користувався, і не так багато "ручної" роботи
DrDee,

Я говорив про інше, я заплутався з іншою відповіддю. Але, схоже, для NodeXL потрібен Office 2007. У мене навіть офісу не встановлено.
пожираний елізій

Я вже встановив це. Тепер, як я повинен використовувати його з c #?
пожираний елізій

переконайтесь, що ви встановили бібліотеку API, а не розширення Office Excel. API доступний по адресою: codeplex.com/NodeXL/Release / ... простір імен NodeXL є Microsoft.NodeXL , так що ви можете імпортувати його з допомогою: імпорт Microsoft.NodeXL.Core імпорту Microsoft.NodeXL.Visualization (я думаю , що ці два найбільш важливі бібліотеки). Просто переконайтеся, що шлях до вашої IDE містить папку NodeXL.
DrDee

3

Я ще не пробував, але натрапив на цікаву пропозицію від MS Research для візуалізації спрямованих графіків Microsoft Automatic Graph Layout .

Спробуйте використовувати "спрямований графік" або "диграф" для пошукових термінів. Я отримую багато хітів.


3

Погляньте на Сацуму . Написано на C #, в основному графічні алгоритми, але є деякі основні схеми розміщення графіків та креслення.


2

Перевірте http://quickgraph.codeplex.com/ Вони мають підтримку візуалізації через DotViz та Glee.

Для візуалізації я б також перевірив

http://flare.prefuse.org/

Хоча це спалах, це здається дуже цікавим, і у них є принаймні візуалізація дерева, хоча ви, можливо, зможете намовити деякі ненаправлені графіки з нього.


0

Хіба це не просто містить кілька прикладів графічних алгоритмів, побудованих на структурах даних колекції? Я би здогадався, що питання вимагає щось на зразок бібліотеки C ++ BGL ( boost.org/doc/libs/1_40_0/libs/graph/doc/index.html ).
Pontus Gagge

Ви маєте рацію Понту. У прикладах керівництва користувача є клас Graph, але він не є частиною бібліотеки. Це приклад, побудований поверх нього. І безладна, неповна, якщо дивитись на джерело.
Пол Сасік,

Але його можна використовувати, ну це як підхід .......
jjchiw

0

Бадді, я думаю, це те, що тобі потрібно!

У цій статті представлена ​​загальна бібліотека графіків, 100% C #. Ця бібліотека є спробою перенести бібліотеку Boost Graph (BGL) з C ++ на C #.


1
Так, але у нього є кілька проблем при спробі скласти графіки, з того, що я читав у коментарях codeproject.
пожираний елізій

0

Ми використовували ZedGraph - проект з відкритим кодом, написаний на C #, тому ви можете його налаштувати, якщо вважаєте за потрібне. Це задовольнило наші потреби, які звучать так, ніби вони дуже близькі до того, що ви описали. Існує навіть вікі-сайт для проекту з декількома непоганими зразками.


Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.