2012-03-28 4 views
1

CorePlotで作成したグラフにストライプの塗りつぶしを設定しようとしています。私は、インターネット上の例を見つけた:CorePlot stipes filling

CPColor *firstStripesColor = [CPColor colorWithComponentRed:1.0 green:1.0 blue:1.0 alpha:0.0]; 
       CPColor *secondStripesColor = [CPColor colorWithComponentRed:1.0 green:1.0 blue:1.0 alpha:0.6]; 
       CPFill *areaStripesFill = [CPFill fillWithFirstColor:firstStripesColor secondColor:secondStripesColor stripeWidth:2]; 
       scatterPlot.areaFill = areaStripesFill; 

私はこのコードは(私は1.0を使用しています)CorePlotライブラリの古いバージョンを使用していると思います。私はCPTColorでCPColorを変更し、CPTFillでCPFillを変更しましたが、fillWithFirstColor:secondColor:というメソッドはありません。 iPhone Stocksアプリのような塗りつぶしを作りたいと思います。

おかげでたくさん

クラウス

答えて

2

はここで背景が株式のテーマのために記入するコードです:

CPTGradient *stocksBackgroundGradient = [[[CPTGradient alloc] init] autorelease]; 

stocksBackgroundGradient = [stocksBackgroundGradient addColorStop:[CPTColor colorWithComponentRed:0.21569 green:0.28627 blue:0.44706 alpha:1.0] atPosition:0.0]; 
stocksBackgroundGradient = [stocksBackgroundGradient addColorStop:[CPTColor colorWithComponentRed:0.09412 green:0.17255 blue:0.36078 alpha:1.0] atPosition:0.5]; 
stocksBackgroundGradient = [stocksBackgroundGradient addColorStop:[CPTColor colorWithComponentRed:0.05882 green:0.13333 blue:0.33333 alpha:1.0] atPosition:0.5]; 
stocksBackgroundGradient = [stocksBackgroundGradient addColorStop:[CPTColor colorWithComponentRed:0.05882 green:0.13333 blue:0.33333 alpha:1.0] atPosition:1.0]; 
stocksBackgroundGradient.angle = 270.0; 
plotAreaFrame.fill = [CPTFill fillWithGradient:stocksBackgroundGradient]; 
+0

は、パターンの繰り返しを作るために、それは可能ですか?例えば。勾配を2番目の単位ごとに、平らな色を1つおきに2番目の単位にしていますか? – Setomidor

+0

軸上に 'alternatingBandFills'を設定します。サンプルコードについては、Plot Galleryのサンプルアプリケーションを参照してください。 –

+1

ありがとう!それを試みましたが、それは私が意図したことを全くしませんでした。私は代わりに透過要素を持つタイル型PNGを使用して終了しました(別のスレッドであなたの提案に従って):) – Setomidor