удалить отрицательные оси из основной диаграммы (диаграммы рассеяния) в iphone

Как удалить отрицательные оси из corePlot (диаграммы рассеяния) в iphone и как установить видимую область графика?


person sujith1406    schedule 20.06.2011    source источник


Ответы (2)


Вот несколько примеров, взятых из примера CPTTestApp, включенного в Core Plot:

  1. Настройка диапазонов графика:

    CPTXYPlotSpace *plotSpace = (CPTXYPlotSpace *)graph.defaultPlotSpace;
    plotSpace.xRange = [CPTPlotRange plotRangeWithLocation:CPTDecimalFromDouble(0.0)
                                                    length:CPTDecimalFromDouble(-10.0)];
    plotSpace.yRange = [CPTPlotRange plotRangeWithLocation:CPTDecimalFromDouble(0.5)
                                                    length:CPTDecimalFromDouble(1500.0)];
    

    Помните, что диапазоны графика аналогичны NSRange — у них есть начальное местоположение и длина. Длина может быть отрицательной, если вы хотите изменить направление оси на противоположное.

  2. Ограничение длины осей:

    yAxis.visibleRange   = [CPTPlotRange plotRangeWithLocation:CPTDecimalFromInteger(2)
                                                        length:CPTDecimalFromInteger(3)];
    yAxis.gridLinesRange = [CPTPlotRange plotRangeWithLocation:CPTDecimalFromInteger(2)
                                                        length:CPTDecimalFromInteger(3)];
    
  3. Изменение видимой области:

    graph.paddingLeft = 60.0;
    graph.paddingTop = 60.0;
    graph.paddingRight = 60.0;
    graph.paddingBottom = 60.0;    
    

    Вы также можете установить отступ на graph.plotAreaFrame, чтобы вставить область графика, чтобы создать место для меток осей и заголовков.

Эрик

person Eric Skroch    schedule 21.06.2011
comment
Я пытаюсь понять основной сюжет. Можете ли вы сказать мне, где я могу найти объяснение на CPTXYPlotSpace. Я вижу, у вас есть диапазон, который выглядит так, как будто он должен идти от 0 до -10. Если бы вы это сделали, я бы подумал, что он будет включать отрицательные значения. - person Brian; 09.11.2014
comment
Точно. Расположение диапазона графика — левый конец (для оси x) или низ (для оси y). Положительная длина отсчитывается вверх к более высоким значениям, а отрицательная длина отсчитывается к более низким значениям. - person Eric Skroch; 09.11.2014

Используйте plotRangeWithLocation: length: методы.

-(void)initXYAxesRanges{

    //Set graph ranges for x and y planes
    CPXYPlotSpace *plotSpace = (CPXYPlotSpace *)graph.defaultPlotSpace;
    plotSpace.xRange = [CPPlotRange plotRangeWithLocation:CPDecimalFromFloat(0)
                                                   length:CPDecimalFromFloat(10];
    plotSpace.yRange = [CPPlotRange plotRangeWithLocation:CPDecimalFromFloat(0)
                                                   length:CPDecimalFromFloat(10)];
}
person Cyprian    schedule 20.06.2011
comment
я дал это, поэтому в этой области не отображаются числа, но оси все еще видны .... а также как изменить видимую область графика? - person sujith1406; 20.06.2011