An An

Results 545 comments of An An

`tooltip` 中的文字内容, 简单格式化的话, 通常使用 `format` 属性就够了, 参考: * https://api.highcharts.com/highcharts/tooltip.format 但我估计你这里需要用到更复杂一点的字符串格式化, 这个时候就需要用到 tooltip 的 formatter 属性了, 参考: * https://api.highcharts.com/highcharts/tooltip.formatter

参考相似问题: * https://github.com/AAChartModel/AAChartKit/issues/1446

> 目前sizeSet设置了180,但是这样标签都超出屏幕之外了,这样怎么设置,是设置margin吗?设置了也没有用, 估计是设置了 size 后, 设置 margin 无效(size 的优先级应该比 margin 高), 你可以不设置 size 只设置 margin 试试, 这样 Highcharts 应该会自动调整饼图的 size 以适应屏幕大小.

> 我设置了margin,margin设置不同的值和上面我发的效果是一样的, 所以我这里说的是**不设置 size 只设置 margin 试试**(将设置 size 的那部分代码去掉).

> 还有作者有Q群之类的么?我看了之前提交的issu和已关闭里面的,发现没有很好的解决方案,想问下别人是怎么解决的。 参考: * https://github.com/AAChartModel/AAChartCore-Kotlin/issues/120

不知道你是怎么设置的, 我如下设置 margin, 是能够起到调整左边距的作用的 ```objc AAChartModel *aaChartModel = AAChartModel.new .marginSet(@[@5,@5,@5,@150]) .chartTypeSet(AAChartTypePie) .tooltipEnabledSet(false) .colorsThemeSet(@[@"#0c9674",@"#7dffc0",@"#ff3333",@"#facd32",@"#0c9674",@"#EA007B",@"#EA007B",@"#EA007B"]) .dataLabelsEnabledSet(true)//是否直接显示扇形图数据 .legendEnabledSet(false) .seriesSet(@[ AASeriesElement.new .enableMouseTrackingSet(@true) .sizeSet(@180)//尺寸大小 .innerSizeSet(@"70%") .showInLegendSet(false) .allowPointSelectSet(false)//是否允许在点击数据点标记(扇形图点击选中的块发生位移) .statesSet(AAStates.new .hoverSet(AAHover.new .brightnessSet(@0) .haloSet(AAHalo.new .opacitySet(@1))) .inactiveSet(AAInactive .new.opacitySet(@100))) .dataSet(@[...

注意 margin 数组属性的含义: ```objc //图表外边缘和绘图区域之间的边距。 //数组中的数字分别表示顶部,右侧,底部和左侧 ([👆,👉,👇,👈])。 //也可以使用 AAChart 对象的 marginTop,marginRight,marginBottom 和 marginLeft 来设置某一个方向的边距。 //默认值为[null] AAPropSetFuncImplementation(AAChartModel, NSArray *, margin) ```

所以, 如注释中所说, 像这样配置图表的上下左右边距也是一样的: ```objc - (AAOptions *)configurePieChart { AAChartModel *aaChartModel = AAChartModel.new // .marginSet(@[@5,@5,@5,@150]) .chartTypeSet(AAChartTypePie) .tooltipEnabledSet(false) .colorsThemeSet(@[@"#0c9674",@"#7dffc0",@"#ff3333",@"#facd32",@"#0c9674",@"#EA007B",@"#EA007B",@"#EA007B"]) .dataLabelsEnabledSet(true)//是否直接显示扇形图数据 .legendEnabledSet(false) .seriesSet(@[ AASeriesElement.new .enableMouseTrackingSet(@true) .sizeSet(@180)//尺寸大小 .innerSizeSet(@"70%") .showInLegendSet(false) .allowPointSelectSet(false)//是否允许在点击数据点标记(扇形图点击选中的块发生位移) .statesSet(AAStates.new .hoverSet(AAHover.new .brightnessSet(@0) .haloSet(AAHalo.new...

我是真机 14 pro max, 所以可能又会有点差别. 但是你这个再调整一下左右边距的值, 应该就差不多了吧

不过我觉得 Highcharts 的饼图的 labels 布局算法还是有点玄学, 图表的 data 数组的值变了的话, 不知道又会不会有什么问题出现.