2012-04-10 3 views
2

Ich möchte wissen, wie Sie die Linienfarbe für einen Teil des Streudiagramms ändern, indem Sie Core Plot auf dem iPhone-Projekt verwenden. Zum Beispiel Wenn der aktuelle Wert der Y-Achse> der vorherige Wert ist, ändert sich die Linienfarbe zu Rot, andernfalls bleibt die Linienfarbe auf Grün. Unten ist mein Code, aber ich habe festgestellt, dass sich die Farbe für einen Teil der Handlung nicht ändert, die sich auf die gesamte Handlung ändert. :( schätzen, wenn jemand einen Vorschlag machen kann.Wie ändere ich die Linienfarbe für einen Teil von scatterPlot, indem ich das Kerndiagramm verwende?

-(NSNumber *)numberForPlot:(CPTPlot *)plot field:(NSUInteger)fieldEnum recordIndex:(NSUInteger)index 

{

CPTScatterPlot *myPlot = (CPTScatterPlot *)plot; 
CPTMutableLineStyle *lineStyle = [CPTMutableLineStyle lineStyle]; 
lineStyle.lineWidth    = 3.f; 
lineStyle.dashPattern   = [NSArray arrayWithObjects:[NSNumber numberWithFloat:5.0f], [NSNumber numberWithFloat:5.0f], nil]; 

NSLog(@"index: %d",index); 


if(index < 7 && index > 0 && fieldEnum == CPTScatterPlotFieldY){ 
if ([[dataForPlot objectAtIndex:index] floatValue] > [[dataForPlot objectAtIndex:index-1] floatValue]) { 
    //lineStyle.lineColor    = [CPTColor redColor]; 
    NSLog(@"%f > %f",[[dataForPlot objectAtIndex:index] floatValue],[[dataForPlot objectAtIndex:index-1] floatValue]); 
    lineStyle.lineColor = [CPTColor redColor]; 
    myPlot.dataLineStyle = lineStyle; 

}else { 
    lineStyle.lineColor    = [CPTColor greenColor]; 
    myPlot.dataLineStyle = lineStyle; 
} 
} 




if(fieldEnum == CPTScatterPlotFieldX){ 
    return [NSNumber numberWithInt:index]; 
}else if(fieldEnum == CPTScatterPlotFieldY){ 
    return [dataForPlot objectAtIndex:index]; 
} 
} 
+0

hi .. ich habe auch die gleiche Anforderung ... haben Sie die Lösung ??? danken Ihnen ... –

+0

hey Kumpel haben Sie die Lösung? Bitte lassen Sie mich wissen – SRI

Antwort

1

Dies ist jetzt nicht unterstützt. Sie haben für jede Farbe/Linienstil ein anderes Grundstück verwenden, die Sie wollen

+0

Vielen Dank Ihren Kommentar :) – chao

+0

ist es möglich, ri jetzt gt? –

+0

@Eric Skroch Ich habe die Antwort auf diese Frage aktualisiert. Bitte korrigieren Sie es bei Bedarf. Danke. –

Verwandte Themen