Комментарии 36
Спасибо большое за статью!
Помню как сильно намучался с курсовой программой, куда надо было вставить один одинокий график, и действительно, я зачем то придумал велосипед…
Надо было чуть больше погуглить))
Помню как сильно намучался с курсовой программой, куда надо было вставить один одинокий график, и действительно, я зачем то придумал велосипед…
Надо было чуть больше погуглить))
Очень часто бесплатные библиотеки перекрываются в поиске платными и обилием ссылок на платные компоненты. Тут представлены бесплатные :)
Аналогично, при выполнении небольшого проекта для чего-то изобретал не очень красивый и не многофункциональный способ отображения данных систем реального времени.
Статья в первую очередь экономит время и дает возможность создания современных интерфейсов.
Статья в первую очередь экономит время и дает возможность создания современных интерфейсов.
Добавлю от себя. Подключаю на данный момент Visifire. Большое количество типов графиков, сами графики выглядят довольно стильно и красиво. Для Silverlight и WPF. Двойная лицензия (платная и для «community» по лицензии GNU General Public License). По производительности пока ничего не могу сказать, толком не работал еще.
На сайте имеется редактор графиков с возможностью просмотра XAML и HTML.
На сайте имеется редактор графиков с возможностью просмотра XAML и HTML.
Ковырял эти графики. В принципе неплохие, но почему-то используют WinForms-идеологию. Т.е. там почти полностью отсутствуют стили и шаблоны, а весь внешний вид задается свойствами.
Глюков хватает, но фиксятся они часто. Только вот цену недавно подняли с 250 до 400 баксов, ироды.
Глюков хватает, но фиксятся они часто. Только вот цену недавно подняли с 250 до 400 баксов, ироды.
Использовал на одном из своих проектов, последнию бету. Контрол очень приятный и удобный, правда есть несколько но, на больших объемах динамических данных, он не успевал отрисовываться + были какие-то баги с зумом по Х.
У вас картинки очень веселые в заголовках статей
У всех «Низкая производительность на больших объемах данных». Это в сравнении с чем-то?
Это вообще. Когда делал свой проект, необходимо было в рантайме работать с данными за 40 лет, дискретность — 10 значений в секунду, на 30 открытых графиках. Ни одна библиотека не дала мне грамотной реализации функционала «на месте». Пришлось городить костыли, кэширующие все через жесткий диск. Получилось в итоге по производительности, конечно, здорово, но обертки вокруг либ оказались не удобными. DynamicDataDisplay тормозит даже на маленьком количестве данных. Обещали вывод через DirectX, однако мое мнение — все упирается в нереальное количество вызовов внутри WPF при изменении данных. Так делать нельзя. Большой объем данных для WPF — сложноватая задачка.
Я не говорю что кэширование должно быть в библиотеках, отвечающих за чарт, но соответствующие интерфейсы без реализации они должны предоставлять. Не все хотят выводить 5 прямоугольников на экран. Бывает, что данных очень много.
12.614.400.000 значений на график? странно что он вообще не взорвался.
Принимать можно какой-нибудь ICachedDataSet, который содержит набор методов, необходимых графической подсистеме для автоматического плавного скроллинга значений и подписей к ним вместо того чтобы принимать вектора и прочие массивы, чтобы разработчик взрывал мозг, когда менять значения в массивах, чтобы на коротком массиве обеспечить вывод 12.614.400.000 значений на график. Этот интерфейс я с радостью реализую через жесткий диск, например. Но дайте мне этот интерфейс.
Странно, что для такого вообще используется .net. Это система для быстрой разработки, но отнюдь не для быстрой работы. У них довольно простая философия: процессорное время стоит дешевле времени программиста. Что-то не работает достаточно быстро? Покупайте 16-ядерный процессор. Мне они за это не очень нравятся.
А они ж по началу хвастались тем, что на лету будут компилять под машину пользователя оптимальнейший лично для неё код, типа настолько оптимальный, что никакие пред-компилированные под сферическую машину в вакууме программы не обгонят! :)
Анализ утекших данных о погоде?
/*шутка*/
/*шутка*/
Большой объем в WPF не нужен. Нужно было готовить данные и агрегировать перед WPF.
посмотрите в mipmaps.
посмотрите в mipmaps.
было бы очень клёво всё-таки указать их производительность относительно друг друга. Если у вас есть такие данные, поделитесь, пожалуйста :) Критерий производительноти для многих будет очень важен, а ультра-большой набор данных, как в вашем случае, актуален не для всех
Да с .Net — часто стоит посупать так. Надо что-то срочно сделать, но задачка — типовая, заходим и ищем на codeplex.
Еще, что положительное в DDD, то что есть нормальная документация и русские разработчики, так что если что-то совсем не получается, то можно спросить)
Еще, что положительное в DDD, то что есть нормальная документация и русские разработчики, так что если что-то совсем не получается, то можно спросить)
А с помощью какой библиотеки можно вывести pie chart со слайсами разной высоты?
Нет, это же обычный pie chart. Надо вот так, только забесплатно.
netcode.ru/dotnet/?lang=&katID=30&skatID=263&artID=7186
правда еще дописать придется, сейчас еще поищу…
правда еще дописать придется, сейчас еще поищу…
НЛО прилетело и опубликовало эту надпись здесь
Microsoft Chart Controls очень сильно напоминает творения Dundas. Они их купили?
Год назад я не нашел готовой библиотеки для графиков в .NET Compact Framework, пришлось делать велосипед :(
Интересно, какие из библиотек можно безболезненно перенести на .NET CF?
Интересно, какие из библиотек можно безболезненно перенести на .NET CF?
Если платные не игнорировать, то Teechart .NET вне конкуренции.
А вот их статья о скорости разных методов вывода 2D под виндами:
www.teechart.net/files/teechartnet/WhitePaper_Direct2D.pdf
А вот их статья о скорости разных методов вывода 2D под виндами:
www.teechart.net/files/teechartnet/WhitePaper_Direct2D.pdf
Ну, во-первых, это актуально только для WinForms, в ASP.NET уже не катит. Плюс в таком случае они могут огрести проблем, например с несовместимыми GDI+ шрифтами. Ну а в-третьих, в большинстве современных .NET чартов тормозит вовсе не отрисовка, а обработка данных, которые рисовать не надо, а также расчёт всего лейаута.
А вообще, если уж реально заботиться об отображении больших объёмов данных, то для этого по идее создают специальный вид серий, у которого отключены некоторые «тяжелые» фичи и который специально оптимизирован для больших объёмов данных, как, например, наш SwiftPlot.
А вообще, если уж реально заботиться об отображении больших объёмов данных, то для этого по идее создают специальный вид серий, у которого отключены некоторые «тяжелые» фичи и который специально оптимизирован для больших объёмов данных, как, например, наш SwiftPlot.
Спасибо за статью. Будет ли обзор по гридам?
Ранее использовали NPlot ( netcontrols.org/nplot/wiki/index.php?n=Main.HomePage ), умеет много всякого и довольно шустрый, сейчас перешли на Microsoft Chart Controls.
А есть ли подобные компоненты, которые бы умели редактировать данные графиков? Т.е., допустим, у меня есть некоторое распределение величины в течении дня, я бы хотел показать ее пользователю ввиде кривой и, в случае, если она его не устраивает, он бы ее мышкой подкорректировал.
Зарегистрируйтесь на Хабре, чтобы оставить комментарий
Ликвидатор велосипедов: часть 2