Como vía query no se me ocurre como sacar todos los años para todos los partidos, al margen de si tiene o nom votos registrados, lo h hecho de una forma un poco más pedestre, pero funciona.
Código:
Chart1->Chart3DPercent = 10;
Chart1->Title->Font->Style = TFontStyles() << fsBold;
Chart1->BottomAxis->Title->Caption = "Años";
Chart1->BottomAxis->Title->Font->Style = TFontStyles() << fsBold;
Chart1->BottomAxis->Labels = fMenu->Auxiliar->FieldByName("Fecha")->AsInteger;
Chart1->LeftAxis->Title->Caption = "Votos";
Chart1->LeftAxis->Title->Font->Style = TFontStyles() << fsBold;
cAux = "";
for (; !fMenu->Auxiliar->Eof; fMenu->Auxiliar->Next())
{
if (fMenu->Auxiliar->FieldByName("Sigla")->AsString != cAux)
{
pItem = Evolucion->Items->Add();
pItem->Caption = (cAux = fMenu->Auxiliar->FieldByName("Sigla")->AsString);
for (nItem = 1; nItem < Evolucion->Columns->Count; nItem ++)
pItem->SubItems->Add("");
}
for (nItem = 1; nItem < Evolucion->Columns->Count; nItem ++)
if (Evolucion->Columns->Items[nItem]->Caption == IntToStr(fMenu->Auxiliar->FieldByName("Fecha")->AsInteger))
pItem->SubItems->Strings[nItem - 1] = FormatFloat("###,##0", fMenu->Auxiliar->FieldByName("Votos")->AsInteger);
}
for (int nRow = 0; nRow < Evolucion->Items->Count; nRow ++)
{
fMenu->Auxiliar->First();
for (; !fMenu->Auxiliar->Eof; fMenu->Auxiliar->Next())
{
if (Evolucion->Items->Item[nRow]->Caption == fMenu->Auxiliar->FieldByName("Sigla")->AsString)
{
Chart1->AddSeries(&TLineSeries(Chart1));
Chart1->Series[Chart1->SeriesCount() - 1]->Title = fMenu->Auxiliar->FieldByName("Sigla")->AsString;
Chart1->Series[Chart1->SeriesCount() - 1]->SeriesColor = (TColor)fMenu->Auxiliar->FieldByName("Color")->AsInteger;
break;
}
}
for (int nCol = 1; nCol < Evolucion->Columns->Count; nCol ++)
Chart1->Series[Chart1->SeriesCount() - 1]->Add(StrToIntDef(StringReplace(Evolucion->Items->Item[nRow]->SubItems->Strings[nCol - 1], ".", "", oReplace), 0),
StrToInt(Evolucion->Columns->Items[nCol]->Caption),
(TColor)fMenu->Auxiliar->FieldByName("Color")->AsInteger);
}
No es la forma más elegante, pero funciona-
![](https://i.ibb.co/CJpgN5v/Imagen.jpg)