Chart: автоматическое создание Series
-
- Сообщения: 24
- Зарегистрирован: 21 июн 2006, 15:59
- Откуда: Russia, Moscow
- Контактная информация:
Chart: автоматическое создание Series
Здравствуйте.
Хочу создать график следующего вида: ось x - время, ось y - значение. В случае одного графика все получается без проблем на основе таблицы со столбцами:
1. DateTimeStamp - дата и время.
2. Value - значение.
Особенность в том, что на одном Chart мне нужно размещать несколько таких графиков - как правило, от 1 до 5. В этом случае в таблицу с данными добавляется столбец с кодом датчика:
1. DateTimeStamp - дата и время.
2. SensorID - код датчика.
3. Value - значение.
Надо, чтобы для каждого датчика (SensorID) строился свой график, при этом в легенде было бы написано его название, а цвет линии также брался бы из базы. Для названий и цветов можно сделать отдельную таблицу, а можно добавить столбцы в основную.
Вопрос в следующем. Есть ли такой встроенный функционал в Chart, или надо создавать Series на лету кодом? И если второе, то можно ли это делать в самом отчете?
Хочу создать график следующего вида: ось x - время, ось y - значение. В случае одного графика все получается без проблем на основе таблицы со столбцами:
1. DateTimeStamp - дата и время.
2. Value - значение.
Особенность в том, что на одном Chart мне нужно размещать несколько таких графиков - как правило, от 1 до 5. В этом случае в таблицу с данными добавляется столбец с кодом датчика:
1. DateTimeStamp - дата и время.
2. SensorID - код датчика.
3. Value - значение.
Надо, чтобы для каждого датчика (SensorID) строился свой график, при этом в легенде было бы написано его название, а цвет линии также брался бы из базы. Для названий и цветов можно сделать отдельную таблицу, а можно добавить столбцы в основную.
Вопрос в следующем. Есть ли такой встроенный функционал в Chart, или надо создавать Series на лету кодом? И если второе, то можно ли это делать в самом отчете?
Любой путь начинается с первого шага
Re: Chart: автоматическое создание Series
Здравствуйте,
В данном случае, вы можете использовать AutoSeriesKey DataColumn, AutoSeriesColor DataColumn свойства.
Спасибо.
В данном случае, вы можете использовать AutoSeriesKey DataColumn, AutoSeriesColor DataColumn свойства.
Спасибо.
-
- Сообщения: 24
- Зарегистрирован: 21 июн 2006, 15:59
- Откуда: Russia, Moscow
- Контактная информация:
Re: Chart: автоматическое создание Series
Спасибо за ответ.
Уточните, столбцы для подстановки в указанные поля должны быть в той же таблице, что и данные, или в отдельной?
В каком формате должен быть указан цвет? Можно ли не указывать цвет (чтобы он генерился автоматически, это для проверки)?
Пробовал разные варианты, но при заполнении этих AutoSeries полей стабильно выдается ошибка компиляции отчета.
Уточните, столбцы для подстановки в указанные поля должны быть в той же таблице, что и данные, или в отдельной?
В каком формате должен быть указан цвет? Можно ли не указывать цвет (чтобы он генерился автоматически, это для проверки)?
Пробовал разные варианты, но при заполнении этих AutoSeries полей стабильно выдается ошибка компиляции отчета.
Любой путь начинается с первого шага
-
- Сообщения: 24
- Зарегистрирован: 21 июн 2006, 15:59
- Откуда: Russia, Moscow
- Контактная информация:
Re: Chart: автоматическое создание Series
Более-менее разобрался, цвет можно не указывать, тогда он генерится случайным образом. Все поля должны браться из одной таблицы.
Остался вопрос - в каком формате должен быть указан цвет?
Остался вопрос - в каком формате должен быть указан цвет?
Любой путь начинается с первого шага
Re: Chart: автоматическое создание Series
Здравствуйте.
Цвет можете указывать либо по имени, либо в RGB формате.
Спасибо.
Цвет можете указывать либо по имени, либо в RGB формате.
Спасибо.
-
- Сообщения: 24
- Зарегистрирован: 21 июн 2006, 15:59
- Откуда: Russia, Moscow
- Контактная информация:
Re: Chart: автоматическое создание Series
Спасибо за ответ, но я уже перекопал форум и нашел правильные варианты заполнения столбца с цветом (viewtopic.php?f=8&t=235):Цвет можете указывать либо по имени, либо в RGB формате.
Код: Выделить всё
Series1; 0xff0000
Series2; 0x00ff00
Series3; Color.White
Но главная проблема, с которой я столкнулся при построении своих графиков - невозможность в вашем Chart размещения точек графика с произвольным шагом. Подробно это описано здесь: viewtopic.php?f=8&t=3729. Мои данные пишутся в базу неравномерно (по дате/времени), и привязать их к сетке невозможно. Пробовал включать интерполяцию, пробовал выключать Show Nulls - это все не то. Я так понимаю, единственный выход - нарисовать свой график в каком-то отдельном компоненте, отрендерить и вставить в отчет как картинку.
Любой путь начинается с первого шага
Re: Chart: автоматическое создание Series
Здравствуйте.
Наш продукт работает по тем же принципам, что и Excel.
В обычной серии данные показываются последовательно без масштабирования по оси Х.
В вашем случае стоит использовать Scatter серию.
Спасибо.
Наш продукт работает по тем же принципам, что и Excel.
В обычной серии данные показываются последовательно без масштабирования по оси Х.
В вашем случае стоит использовать Scatter серию.
Спасибо.
-
- Сообщения: 24
- Зарегистрирован: 21 июн 2006, 15:59
- Откуда: Russia, Moscow
- Контактная информация:
Re: Chart: автоматическое создание Series
Scatter - это то, что нужно, спасибо! Получился отличный график.
Еще вопрос - можно ли как-то, помимо цвета, задавать в автосериях другие параметры линии, например, толщину или стиль? Просто попадаются похожие цвета и не очень понятно, к какой именно серии они относятся. Толщина линии, стиль или маркеры хорошо помогли бы различать линии. Может быть, в отчете можно запускать какой-нибудь обработчик, который уже после генерации серий мог бы их модифицировать?
Еще вопрос - можно ли как-то, помимо цвета, задавать в автосериях другие параметры линии, например, толщину или стиль? Просто попадаются похожие цвета и не очень понятно, к какой именно серии они относятся. Толщина линии, стиль или маркеры хорошо помогли бы различать линии. Может быть, в отчете можно запускать какой-нибудь обработчик, который уже после генерации серий мог бы их модифицировать?
Любой путь начинается с первого шага
-
- Сообщения: 5
- Зарегистрирован: 09 сен 2014, 09:17
Re: Chart: автоматическое создание Series
Здравствуйте, Michael.
К сожалению, такого функционала не существует.
Спасибо.
К сожалению, такого функционала не существует.
Спасибо.
-
- Сообщения: 24
- Зарегистрирован: 21 июн 2006, 15:59
- Откуда: Russia, Moscow
- Контактная информация:
Re: Chart: автоматическое создание Series
Юрий, день добрый.
Да, я вижу, что в автомате передать в серии дополнительные параметры нельзя. Но может быть можно обращаться к сгенерированным сериям из кода отчета и модифицировать их самостоятельно? Мне бы пример.
Да, я вижу, что в автомате передать в серии дополнительные параметры нельзя. Но может быть можно обращаться к сгенерированным сериям из кода отчета и модифицировать их самостоятельно? Мне бы пример.
Любой путь начинается с первого шага