Мы используем инструмент FastReport для отчетности. В этом отчете есть teechart, где мы хотели бы нарисовать линию при максимальном значении некоторых гистограмм.Мы хотим нарисовать линию на максимальном значении на диаграмме
Мы попытались решить эту проблему с добавлением новых серий, но проблема в том, что линия не начинается при х = 0. Как мы можем добиться того, что там будет линия максимальных значений начиная с x = 0 (сразу после оси y).
Example with series, not starting at x=0
Пример кода для рисования линии:
void __fastcall TFTedPoro::cxButton2Click(TObject *Sender)
{
double XMin, XMax, YVal;
frxReport1->LoadFromFile("porocilo.fr3");
TfrxChartView *cv;
cv = (TfrxChartView *)frxReport1->FindObject("Chart1");
if (cv != NULL)
{
cv->Chart->Series[0]->Marks->Visible = false;
cv->Chart->Series[1]->Marks->Visible = false;
cv->Chart->Series[2]->Marks->Visible = false;
cv->Chart->Series[3]->Marks->Visible = false;
cv->Chart->Series[4]->Marks->Visible = false;
cv->Chart->Series[5]->Marks->Visible = false;
cv->Chart->Series[6]->Marks->Visible = false;
if (max_vred >= 350)
{
cv->Chart->LeftAxis->Maximum = max_vred;
}
}
XMin = cv->Chart->Series[0]->XValues->MinValue;
XMax = cv->Chart->Series[0]->XValues->MaxValue;
YVal = cv->Chart->Series[0]->YValues->MaxValue;
for (int i = 1; i < cv->Chart->SeriesCount()-1;i++)
{
XMin = Min(XMin, cv->Chart->Series[i]->XValues->MinValue);
XMax = Max(XMax, cv->Chart->Series[i]->XValues->MaxValue);
YVal = Max(YVal, cv->Chart->Series[i]->YValues->MaxValue);
}
cv->Chart->Series[8]->AddXY(XMin-1, YVal);
cv->Chart->Series[8]->AddXY(XMax+1, YVal);
cv->Chart->Axes->Bottom->SetMinMax(XMin-0.5, XMax+0.5);
frxReport1->ShowReport(true);
}
Результат выглядит следующим образом: Chart with code on button click
На изображении я вижу красную горизонтальную линию при y = 350. Я не уверен, чтобы понять, в чем проблема. Кажется, что красная линия начинается сразу после левой оси y. – Yeray
Это то, чего мы хотели бы достичь, но мы не можем. Если мы добавим строки для строки, линия не начнется с x = 0 - см. Прикрепленное изображение выше –