So schwer ist das doch nicht:
Sei pnChartContainer das Panel, in dem sich der Chart befindet. Das TChart ist mit Alignment=alNone eingestellt, das Panel jedoch mit alClient.
So, im OnResize des Panels nun noch:
Delphi-Quellcode:
Begin
chart.Width := Min (pnChartContainer.Width, pnChartContainer.Height);
chart.Height := chart.Width;
End;
Unjetestet.