0
我有一張圖可以根據玩家統計信息從我們的服務器獲取動態變化的數據。我遇到的問題是我無法根據收到的數據找出如何對圖進行居中。我認爲我已經正確配置了它,但經過進一步測試,我們發現該圖完全偏離中心。以下是位於我的reloadData中的代碼片段。如何使用核心圖和動態數據對圖進行居中調整
- (void)reloadData
{
CPTXYPlotSpace *plotSpace = (CPTXYPlotSpace *)Chart.defaultPlotSpace;
if (maxY < valueMaxY || minY > valueMinY)
{
// Reload the plot graph
maxY = valueMaxY + (valueMaxY/2);
// Properly align the Y-Axis
int tickCount = maxY/5;
if(tickCount <= 1)
{
tickCount = 1;
}
plotSpace.yRange = [CPTPlotRange plotRangeWithLocation:CPTDecimalFromInt(tickCount * -1) length:CPTDecimalFromInt(maxY - (tickCount * -1))];
CPTXYAxisSet *axisSet = (CPTXYAxisSet *)Chart.axisSet;
CPTXYAxis *y = axisSet.yAxis;
y.majorIntervalLength = CPTDecimalFromInt(tickCount);
y.minorTicksPerInterval = 1;
NSArray *exclusionRanges = [NSArray arrayWithObjects:
[CPTPlotRange plotRangeWithLocation:CPTDecimalFromFloat(-2.0) length:CPTDecimalFromFloat(2.0)],
nil];
y.labelExclusionRanges = exclusionRanges;
}
[Chart reloadData];
}
簡要描述是,我希望圖表居中根據視圖來看它。如果可能的話,我希望在y和x軸上不會有超過5個刻度。我想要做的,從上面的代碼片斷只是y軸,是從服務器獲取數據並檢查值是否大於以前的值。然後我調用reloadData並檢查收到的值是否大於以前消息的最小值或最大值。如果然後我重新調整圖和圖。
任何意見將不勝感激。