如何在FMX的TMS FNC Charts中为左侧和底部轴添加文本?
TMS FNC Charts 坐标轴标题添加问题
我正尝试在TMS FNC Charts中重现图表(示例图:温度趋势图),目前的初始化代码如下:
procedure TfrmGraphTemperature.InitializeChart; begin Chart.BeginUpdate; try Chart.Series.Clear; var sMin := Chart.Series.Add; sMin.LegendText := 'Min (°C)'; sMin.Markers.Visible := True; var sMax := Chart.Series.Add; sMax.LegendText := 'Max (°C)'; sMax.Markers.Visible := True; // Axes setup per-series: integer days on X, °C formatting on Y sMin.XValues.MajorUnit := 1; sMin.XValues.MajorUnitFormat := '%.0f'; sMin.YValues.MajorUnitFormat := '%.0f'; sMin.AutoYRange := arCommonZeroBased; sMin.AutoXRange := arCommon; sMin.YValues.Positions := [ypLeft]; sMin.XValues.Positions := [xpBottom]; sMax.XValues.MajorUnit := 1; sMax.XValues.MajorUnitFormat := '%.0f'; sMax.YValues.MajorUnitFormat := '%.0f'; sMax.AutoYRange := arCommonZeroBased; sMax.AutoXRange := arCommon; sMax.YValues.Positions := []; sMax.XValues.Positions := []; Chart.InteractionOptions.Panning := False; finally Chart.EndUpdate; end; end;
但我不知道如何为左侧和底部轴添加文本,尝试多种命令均无效,请问该如何实现?
解决方法
在TMS FNC Charts中,坐标轴标题需通过图表的Axes集合配置,而非系列(Series)对象。直接定位对应位置的轴,设置其标题文本及可见性即可。
修改你的初始化代码,在Chart.InteractionOptions.Panning := False;之后、finally之前添加以下代码:
// 配置左侧Y轴标题 Chart.Axes[0].Title.Text := '温度 (°C)'; Chart.Axes[0].Title.Visible := True; // 配置底部X轴标题 Chart.Axes[2].Title.Text := '天数'; Chart.Axes[2].Title.Visible := True;
额外说明
- 默认情况下,
Chart.Axes集合的索引对应轴位置:0=左侧Y轴,1=右侧Y轴,2=底部X轴,3=顶部X轴。 - 若需要调整标题样式(字体、颜色等),可通过
Title.Font属性设置:Chart.Axes[0].Title.Font.Size := 12; Chart.Axes[0].Title.Font.Color := clNavy; - 确保使用的TMS FNC Charts版本支持轴标题功能,旧版本建议更新至最新稳定版。
内容的提问来源于stack exchange,提问作者user31362432
相关产品推荐
相关产品推荐

