Pregunta

Estoy tratando de encontrar una trama de dispersión cuyo rango depende del valor recibido.La variable dada, self.xAxisminum, toma el primer valor de los datos recibidos.Sin embargo, cuando ejecuto mi programa, lee de tal manera que, cuando se self.xaxisminimum= 4688, el PLOTSPACE.range comienza a partir de 5000. Dado a continuación se encuentra la configuración del espacio de plas.

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)];

¿Es todo lo relacionado con la longitud del intervalo principal?Tengo una gran longitud de intervalo de 180 segundos. Dar a continuación es el código para los parámetros del 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;

Por lo tanto, para esta configuración, debería haber tenido un eje X a partir de (4688-100) en lugar de 5000. ¿Alguien tiene alguna idea de por qué?Muchas gracias de antemano

¿Fue útil?

Solución

El problema se encuentra en decimalfromfloat.Di una entrada entera al valor del flotador y se convirtió en decimal.En su lugar, cambié a Decimalfrominteger.Funciona bien.Gracias

Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top