You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

求Objective-C双柱状图库:展示50个对象的胜负数据

适合Objective-C的双柱状图库推荐&实现方案

嘿,刚好有几个适配Objective-C的优质柱状图库,完全能满足你展示50个对象胜负数据的需求,而且都能轻松实现双柱状图效果~

1. Charts(支持Objective-C调用)

Charts是iOS/macOS生态里最受欢迎的绘图库之一,虽然现在主打Swift版本,但保留了完整的Objective-C兼容层,社区资源多,处理50组数据毫无压力。

你可以这样用Objective-C实现双柱状图:

// 初始化图表视图
BarChartView *chartView = [[BarChartView alloc] initWithFrame:CGRectMake(20, 100, self.view.frame.size.width-40, 400)];
[self.view addSubview:chartView];

// 准备胜、负两组数据
NSMutableArray *winValues = [NSMutableArray array];
NSMutableArray *loseValues = [NSMutableArray array];
for (int i = 0; i < 50; i++) {
    // 替换成你的实际胜负数据
    float win = arc4random_uniform(100);
    float lose = arc4random_uniform(100);
    [winValues addObject:[[BarChartDataEntry alloc] initWithX:i y:win]];
    [loseValues addObject:[[BarChartDataEntry alloc] initWithX:i y:lose]];
}

// 创建两个数据集
BarChartDataSet *winSet = [[BarChartDataSet alloc] initWithEntries:winValues label:@"胜利"];
winSet.colors = @[[UIColor greenColor]];
BarChartDataSet *loseSet = [[BarChartDataSet alloc] initWithEntries:loseValues label:@"失败"];
loseSet.colors = @[[UIColor redColor]];

// 组合数据集并设置到图表
BarChartData *chartData = [[BarChartData alloc] initWithDataSets:@[winSet, loseSet]];
// 设置柱子宽度,让两组柱子并列
chartData.barWidth = 0.35;
chartView.data = chartData;

// 开启横向滚动,适配50个数据的显示
chartView.pinchZoomEnabled = NO;
chartView.scrollEnabled = YES;

2. Core Plot(老牌Objective-C绘图框架)

Core Plot是非常稳定的纯Objective-C绘图库,自定义程度极高,适合对图表样式有精细需求的场景,完全支持双柱状图的实现。

实现思路:创建两个CPTBarPlot实例,分别绑定胜、负数据,通过调整barOffset属性让两组柱子并列显示,再设置不同的填充颜色区分数据。

3. 基于你已用的E-CHART Library修改双柱状图

如果你想继续使用当前的E-CHART库,只需要调整配置参数就能实现双柱效果:

在构造图表的option配置时,添加两个series对象,分别对应胜、负数据集,设置type为"bar",并通过barWidth和barGap参数控制柱子的宽度和间距,让两组柱子并列展示。比如在Objective-C中构造对应的字典配置,把50个对象的胜、负数据分别传入对应的data数组即可。

实用小提示

  • 针对50个数据的显示,记得开启图表的横向滚动/缩放功能,避免柱子过于拥挤
  • 可以给柱子添加点击交互,方便用户查看单个对象的详细胜负数据
  • 可以设置X轴标签的倾斜角度,避免标签重叠

内容的提问来源于stack exchange,提问作者Dinesh

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.05.28 09:43:29