美好的一天。
我正在使用ShinobiCharts来创建这种条形图:
但是我遇到了一些问题。不可能为条形设置不同的颜色,因此我必须使用不同颜色的系列。所以我的问题是:
1)当我使用系列时,名称与栏中心不匹配。
2)总是根据数据点计数调整条形并重新定位(我希望它们是静态的,如果我有一个数据点,它将保持在#1位置并且有6个数据点不会改变数据点#1的位置)
3)条形宽度(厚度)始终自动设置,如果我将其设置为:
[yAxis setDefaultRange:[[SChartNumberRange alloc] initWithMinimum:@1 andMaximum:@2]];
图表变得过大,只有一个条形可见(值根本不会改变厚度)。 y轴是SChartCategoryAxis,x轴是SCHartNumberAxis。
没有进行其他修改,我只设置了两个值和颜色。初始化也是样本的最低限度。
现在的样子:
注意:不允许平移或缩放。
我知道这里有多重问题,但我想结束我的这场斗争。
答案 0 :(得分:1)
好的,我找到了答案。
1)要使系列名称与bar中心匹配,请在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)我没有得到这个答案的答案,但由于所有的栏都是静态的,因此栏的大小最佳,因此符合我的需要(尽管我希望能够配置它)。