IOS-图表调整单个折线图数据点的圆半径

IOS-Charts Adjust circle radius for individual line chart data point

我正在使用 iOS-Charts 线图视图绘制圆半径为零的线,我希望用户能够在线上放置点。有没有办法通过使用委托 chartValueSelected 将单个数据点的圆半径从零更改为 20?

我可以轻松更改整个数据集的圆半径,但我很难弄清楚如何处理单个数据点。

lineChartDataSet2.circleRadius = 0
lineChartDataSet2.circleRadius = 20

我在一个应用程序中通过实际拥有多个数据集解决了这个问题,第二个数据集仅用于在同一直线上添加点,但具有给定的圆半径。我咨询了 Charts 的开发人员,没有其他方法可以实现它。

我有:

- (void)displayChartWithSet:(LineChartDataSet *)set highlightedSet:(LineChartDataSet *)highlightedSet {
set.drawValuesEnabled = NO;
    set.drawCirclesEnabled = YES;
    set.circleColors = [NSArray arrayWithObject:[UIColor clearColor]];
    set.colors = [NSArray arrayWithObject:[UIColor whiteColor]];
    set.lineWidth = 2.0f;
    set.mode = LineChartModeHorizontalBezier;
    //Builds the data to be presented from two distinct data sets
    // one containing only points with a radius
    LineChartData *data = [[LineChartData alloc] initWithDataSets:[NSArray arrayWithObjects:set, highlightedSet, nil]];
}

这允许我将单个点添加到突出显示的集合,然后在需要时重新绘制视图,或者设置 nil 并且没有突出显示的点。突出显示的数据集还有一个进一步的设置功能,用于配置点。