Вверх ↑
Этот топик читают: Гость
Ответов: 85
Рейтинг: 7
#1: 2011-04-08 13:52:00 ЛС | профиль | цитата
При использовании гистограммы цвет выводимых значений можно задать только один на всю гистограмму и то только по-умолчанию.
Хотелось бы, при выводе окрашивать значения программно, и в разные цвета.
Я так думаю, надо сделать точку BgColor доступной программно.
Как-то так:
code_23271.txt
но к сожалению, не владея Дельфи, элемент дальше доработать не могу.
Может кто поможет в этом вопросе?

Сейчас цветом управляю вот таким способом:
Add(MainForm,16184661,77,42)
{
Left=20
Top=105
Width=501
Height=412
Caption="Histogram"
link(onCreate,14310219:doFor,[(121,62)(121,48)])
}
Add(For,14310219,133,42)
{
End=7
link(onEvent,371124:doEvent1,[])
}
Add(Plotter,10574215,133,84)
{
Left=5
Top=40
Width=475
Height=340
Align=5
Name="Plotter"
GridColor=16777215
}
Add(PlotHistogram,7049018,287,42)
{
Grapher="Plotter"
Color=8421504
Step=2
BgColor=255
Offset=2
Axis="X1"
Point(doBgColor)
}
Add(PlotHistogram,8610298,287,77)
{
Grapher="Plotter"
Color=8421504
Step=2
BgColor=65535
Offset=2
Axis="x1"
}
Add(Hub,371124,175,42)
{
OutCount=3
link(onEvent1,7049018:doAdd,[])
link(onEvent2,5067655:doOperation,[(207,55)(207,83)])
link(onEvent3,8666798:doOperation,[(203,62)(203,125)])
}
Add(Math,5067655,224,77)
{
OpType=3
Op2=2
link(onResult,8610298:doAdd,[])
}
Add(PlotHistogram,2223394,287,119)
{
Grapher="Plotter"
Color=8421504
Step=2
BgColor=32768
Offset=2
Axis="x1"
}
Add(Math,8666798,224,119)
{
OpType=3
Op2=3
link(onResult,2223394:doAdd,[])
}





карма: 0

0
файлы: 1code_23271.txt [690B] [372]
Гость
Ответов: 17029
Рейтинг: 0
#2: 2011-04-09 01:51:34 правка | ЛС | профиль | цитата


Редактировалось 8 раз(а), последний 2021-06-21 04:12:21
карма: 0

0
Администрация
Ответов: 15295
Рейтинг: 1519
#3: 2011-04-09 02:55:29 ЛС | профиль | цитата
чтобы цвет менялся в пределах одной серии, да еще по несколько позиций для каждого значения, его (цвет) нужно хранить для каждой точки графика, что относительно полезности предложения очень не рационально. BgColor при этом не поможет никак.

В данном случае самое разумное делать отдельный элемент, который бы вызывал некоторое событие всякий раз, как требовалось бы отрисовать один столбик гистограммы, ибо все желания вида "хочу по три цвета на колонку", "хочу вертикальный линейный градиент" и т.д. учесть в одном элементе не возможно.
карма: 27
0
Ответов: 85
Рейтинг: 7
#4: 2011-04-09 11:13:37 ЛС | профиль | цитата
Первый пример не правильно отражает мою мысль.
Dilma, я не хочу градиент, и в одном столбике, понимаю, несколько цветов держать накладно.
Программный доступ к BgColor хотелось бы иметь вот в таком примере (это контейнер из моей программы "геомагнитный индикатор"):

code_23284.txt
не городить огород из элементов гистограмм, а подавать цвет программно на один элемент. Такое возможно?
карма: 0

0
файлы: 1code_23284.txt [1.7KB] [402]
4
Сообщение
...
Прикрепленные файлы
(файлы не залиты)