2

私はコアプロットに不慣れです。

私は何を持っていますか?

1)主間隔が50のY軸。範囲(0〜300)なので、y軸は0、50、100...300から始まります。十分です。

2)主グリッド線を描画します。

CPTMutableLineStyle *yGridLineStyle = [[CPTMutableLineStyle alloc] init];
yGridLineStyle.lineColor = [CPTColor whiteColor];
yGridLineStyle.lineWidth = 0.5;
y.majorGridLineStyle = yGridLineStyle;

グリッド線は白色で表示されます。

何が必要ですか?

1)グラフの背景に3つの異なる色を表示したい。

2)0から65->赤色。

3)65-88->青色から。

4)88以上->緑色。

どうすれば同じことを達成できますか?..親切なアドバイス。

私は何を試しましたか?

y軸のBandFillsを交互に試してみました。例:

y.alternatingBandFills = [NSArray arrayWithObjects:[CPTColor redColor], [CPTColor greenColor], nil];

しかし、それは主要な間隔に基づいてのみ満たされます。範囲から開始する必要のあるマイナー間隔について具体的に説明することはできませんでした。

4

1 に答える 1

4

Core Plotは、これらを「制限帯域」と呼んでいます。

CPTPlotRange *bandRange;
CPTFill *bandFill;

// red
bandRange = [CPTPlotRange plotRangeWithLocation:CPTDecimalFromDouble(0.0)
                                         length:CPTDecimalFromDouble(65.0)];
bandFill = [CPTFill fillWithColor:[CPTColor redColor]];
[y addBackgroundLimitBand:[CPTLimitBand limitBandWithRange:bandRange
                                                      fill:bandFill]];

// blue
bandRange = [CPTPlotRange plotRangeWithLocation:CPTDecimalFromDouble(65.0)
                                         length:CPTDecimalFromDouble(23.0)];
bandFill = [CPTFill fillWithColor:[CPTColor blueColor]];
[y addBackgroundLimitBand:[CPTLimitBand limitBandWithRange:bandRange
                                                      fill:bandFill]];

// green
bandRange = [CPTPlotRange plotRangeWithLocation:CPTDecimalFromDouble(88.0)
                                         length:CPTDecimalFromDouble(212.0)];
bandFill = [CPTFill fillWithColor:[CPTColor greenColor]];
[y addBackgroundLimitBand:[CPTLimitBand limitBandWithRange:bandRange
                                                      fill:bandFill]];
于 2012-12-12T00:36:51.660 に答える