首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >强制JBChartView使用0-100 Y轴

强制JBChartView使用0-100 Y轴
EN

Stack Overflow用户
提问于 2014-02-28 04:36:09
回答 2查看 1K关注 0票数 0

我在我的项目中使用了优秀的JBChartView,它工作得很好。下面是我当前的代码:

代码语言:javascript
复制
self.lineChart = [[JBLineChartView alloc] initWithFrame:CGRectMake(320, 400, 680, 300)];
self.lineChart.dataSource = self;
self.lineChart.delegate = self;
self.lineChart.backgroundColor = [UIColor clearColor];
JBLineChartFooterView *footerView = [[JBLineChartFooterView alloc] initWithFrame:CGRectMake(10, ceil(self.view.bounds.size.height * 0.5) - ceil(10 * 0.5), self.view.bounds.size.width - (10 * 2), 10)];
footerView.backgroundColor = [UIColor clearColor];
footerView.leftLabel.text = @"yesterday";
footerView.leftLabel.textColor = [UIColor whiteColor];
footerView.rightLabel.text = @"now";
footerView.rightLabel.textColor = [UIColor whiteColor];
footerView.sectionCount = 10;
self.lineChart.footerView = footerView;
[self.view addSubview:self.lineChart];
[self.lineChart setState:JBChartViewStateCollapsed animated:YES];

没什么花哨的,真的。

JBChartView根据在lineChartView: heightForIndex:中传递给它的数据自动选择Y轴比例。这在大多数情况下都很好。然而,我的数据是关于CPU使用率的,因此我想强制Y轴始终在底部为0,在顶部为100。

实际上,我希望它在底部为0,在顶部为MAX(100, highestPoint) (因为CPU使用率有时可能超过100%) --这可能吗?

EN

回答 2

Stack Overflow用户

发布于 2014-04-03 08:10:18

v2.2.1开始,JBChartView允许您为y轴提供minimumValue和/或maximumValue

备注:

  • 如果未提供值,则使用图表数据源的最小值和最大值。
  • 如果提供了值,则它们必须为>= 0,否则将抛出断言。
  • 最小/最大值被限制为图表数据源的实际最小/最大值的上限和下限。例如,如果提供的maximumValue为20,而图表的实际最大值为100,则100将为used.
  • Lastly,以使对最小/最大值的修改生效,则必须调用reloadData。

希望这能有所帮助!

票数 4
EN

Stack Overflow用户

发布于 2014-02-28 05:07:47

事实证明,我所需要做的就是修改line 240 of JBLineChartView.m

代码语言:javascript
复制
self.cachedMaxHeight = maxHeight;

要说的话:

代码语言:javascript
复制
self.cachedMaxHeight = MAX(100,maxHeight);
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/22079773

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档