0

我正在使用 ShinobiCharts 创建这种条形图:

在此处输入图像描述

但我提出了几个问题。为条形设置不同的颜色是不可能的,因此我必须使用系列来对条形进行不同的颜色。所以我的问题是:

  1. 当我使用系列时,名称与条中心不匹配。

  2. 条形图总是根据数据点计数调整大小和重新定位(我希望它们是静态的,如果我得到一个数据点,它将保持在位置 #1,并且再有 6 个数据点不会改变数据点 #1 的位置)。

  3. 条形宽度(厚度)总是自动设置的,如果我设置它:

    [yAxis setDefaultRange:[[SChartNumberRange alloc] initWithMinimum:@1 andMaximum:@2]];

图表变得过大,只有一个条形可见(值根本不会改变粗细)。y 轴是 SCHartCategoryAxis,x 轴是 SCHartNumberAxis。

没有进行其他修改,我只是设置了两个值和颜色。初始化也是样本中的最低要求。

这是它现在的样子:

在此处输入图像描述

注意:不允许平移或缩放。

我知道这里有很多问题,但我想结束我的这场斗争。

4

1 回答 1

1

好的,这是我找到的答案。

1) 要使系列名称与条形中心匹配,请在 seriesForIndex 方法中添加:

series.stackIndex = [NSNumber numberWithInt:1];

我的 2.0 文档(我在几天前购买溢价后得到)中没有提到这个属性,结果证明 2.3 文档涵盖了这个属性: http ://www.shinobicontrols.com/docs/ShinobiControls/ShinobiCharts/2.3.0/ Premium/Normal/Classes/SChartCartesianSeries.html#//api/name/stackIndex

2)在我的 numberOfSeries 方法中,我这样做:

- (int)numberOfSeriesInSChart:(ShinobiChart *)chart {

chart.yAxis.rangePaddingHigh = [NSNumber numberWithInt:(kEntriesToDisplay-[_receivedData count])];
return [_receivedData count];
}

我基本上做的是在我的数据上方设置可用空间(使用 min 设置下面的数据)。我设置了空格以满足我定义的条目数。

3)好吧,我没有得到这个答案,但是由于所有条形都是静态的,因此条形的大小得到了优化,因此符合我的需求(尽管我希望无论如何都能够配置它)。

于 2013-08-23T12:13:58.553 回答