Question

J'essaie de trouver un complot de dispersion dont la plage dépend de la valeur reçue.La variable donnée auto.xaxisminimum prend la première valeur des données reçues.Cependant, quand j'exécute mon programme, il lit de telle sorte que, quand auto.xaxisminimum= 4688, le Plotspace.Range commence à 5000. Donné ci-dessous se trouve les paramètres de la parcelle.

CPTXYPlotSpace *plotSpace = (CPTXYPlotSpace *)self.graph.defaultPlotSpace;
plotSpace.xRange = [CPTPlotRange       

plotRangeWithLocation:CPTDecimalFromFloat(self.xAxisMinimum - 100)  length:CPTDecimalFromFloat(60*60)];

plotSpace.yRange = [CPTPlotRange plotRangeWithLocation:CPTDecimalFromFloat(yAxisMin) length:CPTDecimalFromFloat(yAxisMax - yAxisMin)];

Est-ce quelque chose de lié à la grande longueur d'intervalle?J'ai une longueur d'intervalle majeure de 180secondes. Donnez ci-dessous est le code des paramètres de XAxis-Set.

axisSet.xAxis.title = @"Time(per sec)";
axisSet.xAxis.titleTextStyle = textStyle;
axisSet.xAxis.axisLineStyle = lineStyle;
axisSet.xAxis.titleOffset = 30.0f;
axisSet.xAxis.majorTickLineStyle = lineStyle;
axisSet.xAxis.minorTickLineStyle = lineStyle;
axisSet.xAxis.majorGridLineStyle = lineStyle;
axisSet.xAxis.minorGridLineStyle=gridStyle;
axisSet.xAxis.labelOffset = 6.0f;
axisSet.xAxis.majorIntervalLength = CPTDecimalFromFloat(180.0f);
axisSet.xAxis.minorTicksPerInterval = 5;
axisSet.xAxis.minorTickLength = 0.50f;
axisSet.xAxis.majorTickLength = 0.50f;
axisSet.xAxis.labelTextStyle = textStyle;
axisSet.xAxis.labelFormatter = formatter;

Donc pour cette configuration, j'aurais dû avoir un axe X à partir de (4688-100) au lieu de 5000. Quelqu'un a une idée de pourquoi?Merci beaucoup à l'avance

Était-ce utile?

La solution

Le problème réside dans DecimalFromfloat.J'ai donné une entrée entière à la valeur du flotteur et convertit en décimale.Au lieu de cela, j'ai changé en décimalfrominteger.Ça fonctionne bien.Merci

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top