Скрыть выходные дни на графике инструментария WPF - PullRequest
8 голосов
/ 28 ноября 2009

Я создаю небольшое приложение, которое отображает данные о финансовых ценах, и, поскольку финансовые рынки закрыты по выходным, у меня нет данных за эти дни. По умолчанию диаграмма, найденная в новом WPF Toolkit, показывает большой разрыв между пятницей и следующим понедельником, и это поведение неприемлемо. Я пытаюсь найти способ «спрятать» разрывы выходных, но не могу найти каких-либо хороших решений. До сих пор я полагал, что мне придется перегружать стандартную DateTime структуру (как?), Которая сможет распознавать и пропускать выходные и праздничные дни. Я ищу предложения и / или указатели, прежде чем начать спуск по этому скользкому склону.

Некоторые подробности:

Мне предоставлен широкий спектр данных - в настоящее время цены на дневное закрытие на NYSE. Я использую DayTimeAxis для построения независимой переменной LineSeries, которая имеет тип DateTime. В настоящее время он просто отображает все цены, один день за раз - и вот где дьявол, он показывает более широкие разрывы из-за отсутствия данных по субботам и воскресеньям и некоторым основным праздникам.

Мне, в конечном итоге, придется показывать более подробный (ежечасно, минутный) график, как только данные станут доступны, но проблема останется, если пользователь захочет просматривать почасовые данные за какую-то пятницу и следующий понедельник.

Ответы [ 3 ]

2 голосов
/ 14 июля 2012

После долгих попыток поиграть с различными вариантами я в итоге использовал CategoryAxis вместо DateTimeAxis.Он обрабатывает каждый день как категорию, не выводя отношения между днями.

Данные по-прежнему могут храниться в виде объектов DateTime для любых необходимых вычислений, и вам просто нужно беспокоиться о ToString (это то, что CategoryAxis помечает для каждогокатегория).Или просто добавьте их все в виде строк - технически вычисления выполняются для точек данных, а не для массива дат, поэтому здесь нет большой потери ...

1 голос
/ 09 сентября 2010

Если вы будете строить подсвечник или оху, вы не сможете использовать инструментарий (вы можете, но это будет ОЧЕНЬ неприятно), если вы открыты для использования компонента, используйте visifire, который вы можете использовать. если вы не можете понять это, отправьте образец кода, пожалуйста.

0 голосов
/ 15 мая 2010

Полностью вне головы, так что я не уверен, насколько это возможно, но не могли бы вы установить преобразователь значения в свойстве Width точки данных, который бы возвращал «Авто» в будний день и 0 на выходные?

...