Аннотации располагаются либо на позициях пикселей, либо на относительных позициях на диаграмме в зависимости от того, как вы определяете свойство Scaling
.
Вот как работает Annotation
.Так что, как только вы определили положение аннотации, она там закрепится.
Если вы хотите, чтобы надписи наклеивались на точки, посмотрите на Series.Marks
.
Когда вы добавляете точки к серии, вы можетедобавить текст метки, например:
AddXY (xPos, yPos, 'Hello', clGreen);
Установите Series.Marks.Visible := True
для отображения меток меток.Чтобы настроить текст метки на лету, посмотрите на событие TChartSeries.OnGetMarkText
.
Изучите все свойства Series.Marks
, чтобы настроить внешний вид по своему вкусу.
Обновление:
Чтобы скрыть некоторые метки в данных серии, установите для текста метки пустую строку во время события OnGetMarkText
.
Пример использования OnGetMarkText
:
...
Series1.OnGetMarkText := Self.Series1GetMarkText; // Define the OnGetMarkText event
...
procedure TMyForm.Series1GetMarkText(Sender: TChartSeries;
ValueIndex: Integer; var MarkText: string);
begin
if ValueIndex=3 then // Just an example how to set the selection criteria
MarkText := 'Hello'
else
MarkText := '';
end;