Я собираюсь написать программу, которая покажет пользователю график. График будет меняться со временем (пользователь должен иметь возможность щелкнуть правой кнопкой мыши элемент графика и запросить более подробную информацию, что приведет к появлению новых битов графика), и пользователь может иметь возможность перетаскивать части графика вокруг . В идеале я также хотел бы иметь возможность самостоятельно указывать относительную компоновку определенных частей графика, оставляя общий макет на усмотрение библиотеки, но это не существенно.
Я пытаюсь выбрать библиотеку макетов графиков, которую нужно использовать. Насколько я могу судить, двумя ведущими кандидатами являются Graphviz и Dynagraph. Веб-сайт Dynagraph предполагает, что Graphviz предназначен для рисования статических графиков, и что Dynagraph был создан на основе Graphviz и содержит алгоритмы для графиков, которые будут обновляться. У него есть пример программы под названием Dynasty, которая делает именно то, что я хочу. Однако на сайте Graphviz есть пример программы под названием Lefty, которая, кажется, делает именно то, что я хочу. Судя по результатам Google (и SO), Graphviz также, кажется, более широко используется.
Наконец, я хотел бы закодировать часть графического интерфейса пользователя на таком языке, как Python или Scheme, что заставляет меня немного сомневаться в использовании C ++, потому что я понимаю, что это сложнее связать с интерпретаторами.
Итак, мой вопрос: какая библиотека лучше для того, что я пытаюсь сделать? У них обоих есть сильные и слабые стороны? Один из них действительно прекратил разработку и просто уходит со своего веб-сайта, чтобы сбить меня с толку?
(Я видел Простое динамическое отображение графика для C ++ и Открытые исходные библиотеки для разработки ориентированных графиков, но я не могу сказать, являются ли они правильно насчет выбора Graphviz или Dynagraph из-за Lefty, а также из-за языковой проблемы.)