0

この縦棒グラフには、月次視覚化と年次視覚化の2つのモードがあり、月次視覚化は多くの列で問題なく機能しますが、中央に表示される唯一の列を取得できないため、年次視覚化が壊れています。グラフでは、常にXAxisの最初のポイントに設定されています。

NumberAxisを使用している場合は、簡単に解決できます。列を中間点(この場合、合計12か月のうち6番目の位置)に設定するだけです。ただし、CategoryAxisを使用していますが、NumberAxisのように注文されていないため、同じソリューションを使用できません。

CategoryAxisを使用してこの結果を達成するにはどうすればよいですか?

PS:この軸に設定したSChartRangeに関係なく、列は常にXAxisの最初の位置に設定されます。

4

1 に答える 1

0

私が望む結果を達成する方法を見つけました。

範囲を最初のdataPointのみの周りに変更しました。これにより、列は「中央のdataPoint」である必要はなく、唯一のdataPointであるチャートの中央に配置されました。コードは私のsChartに入ります:dataPointAtIndexforSeriesAtIndex次のように

-(id<SChartData>)sChart:(ShinobiChart *)chart dataPointAtIndex:(int)dataIndex forSeriesAtIndex:(int)seriesIndex{

.
.
.
    SChartNumberRange * numberRange;
    if(isYearlyChart){
            numberRange = [[SChartNumberRange alloc] initWithMinimum:[NSNumber numberWithFloat:-0.9]andMaximum:[NSNumber numberWithInt:(1)]];


    }

私が使用していた通常のNumberRangeは1から13でした。

これがこの主題に関して同様の問題を抱えている他の人に役立つことを願っています:)

PS:私はこれをできるだけ早く正解としてマークします。

于 2012-12-07T16:31:19.750 に答える