我在Coreplot中排序数据时出现问题。我有一个堆叠的条形图,它是A和B.这些值也是我的图中的值。但是,coreplot会以某种方式对数据进行排序。
for (int i=0; i<[privDataArray count];i++) {
NSMutableDictionary *dict = [NSMutableDictionary dictionary];
NSNumber *a = [NSNumber numberWithFloat:[[[privDataArray objectAtIndex:i] objectForKey:@"rente"] floatValue]];
NSNumber *b = [NSNumber numberWithFloat:[[[privDataArray objectAtIndex:i] objectForKey:@"aflossing"] floatValue]];
[dict setObject:a forKey:@"a"];
[dict setObject:b forKey:@"b"];
[data setObject:dict forKey:[NSNumber numberWithInt:i]];
}
这是我的数据实例。所以我需要B在堆积条形图的底部。但Coreplot将它放在堆栈的底部。
现在,我对此的解决方案只是更改A和B的名称,问题就解决了。
然而;我需要创建一个自定义图例:
-(NSString *)legendTitleForBarPlot:(CPTBarPlot *)barPlot recordIndex:(NSUInteger)index {
if (index==0) {
return @"Rente";
else if (index==1) {
return @"Aflossing";
} else {
return nil;
}
}
这产生了一个非常奇怪的传说。它显示了两种颜色的样本,旁边有随机字符串。
我的问题是:如何为索引返回NSStrings,换句话说,如何创建自定义图例?
答案 0 :(得分:0)
仅当您想要条形图中每个条形图的单独图例条目时,才需要-legendTitleForBarPlot:recordIndex:
方法。例如,请参阅 Plot Gallery 示例应用程序中的“彩色条形图”。设置图title
以为每个图创建一个图例条目。