2013-07-02 74 views
0

我有4個SChartLineSeries(不同的線條顏色表示Read,Green,Yellow,Blue)。這4個都可以在任何時候相互交叉。我還得用Gradient來填充它。我的觀點是:有沒有什麼辦法可以在Shinobi Controls for iOS中設置不同顏色的漸變色

  1. 如果我們在x軸的最低位置有黃線,我們可以根據黃色來管理梯度。

    series.style.showFill = YES;

    series.style.areaColor = [UIColor colorWithRed:65.0/255.0 green:165.0/255.0 blue:65.0/255.0 alpha:1];

    series.style.areaColorLowGradient = [UIColor colorWithRed:35.0/255.0 green:75.0/255.0 blue:35.0/255.0 alpha:1];

  2. 但是,如果紅線在任何一點穿過黃線(黃線不再在底部)並且成爲最底線。現在我必須以這樣的方式製作漸變效果,即黃線將在其下面具有黃色效果的漸變效果,而紅線會在其下面具有漸變效果和紅色效果。等等。

  3. 並且與最底線以上的線相同。我們必須爲它製作漸變效果。如果其他線穿過此線,則應該改變漸變顏色。如果第三條線切斷第二條線,則顏色也要改變。等等。但漸變效果不應該到底,應該停在與下一行相遇的地方。

我必須爲所有行顯示這些效果。

所以,請任何想法。

感謝您的回覆。

+0

可以任何人請給我任何想法嗎? –

回答

0

這聽起來像你需要你的堆疊系列和您的一系列分裂成更小的系列:

要堆疊的系列,每個設置爲相同的NSNumber的stackIndex屬性 - 例如:

lineSeries.stackIndex = @0; 

這將意味着您的線條填充以樂隊形式繪製,「最低」直到下一個最低等等。您還需要爲每個數據點提供yValues,作爲相同xValue的先前(較低)系列yValue的偏移量。

這不能解決你的問題與重疊的行 - 爲了解決這個問題,你可以在系列改變的每個點(每當兩行交叉時)將你的數據分割成不同的部分(不同系列)。這種方法意味着在將數據傳遞給圖表之前,您的數據源必須做相當數量的工作,並且最終可能會有很多系列,但它會產生您以後的效果。希望這可以幫助! =)

聲明:我在ShinobiCharts上工作。

相關問題