Прикрепление Lables в Core-Plot к нижней части GraphView - PullRequest
0 голосов
/ 06 марта 2012

в данный момент я борюсь с основным графиком, и я пытаюсь добиться того, чтобы метки моей оси X придерживались нижних границ моего graphView.Означает: когда я устанавливаю диапазон в зависимости от минимальных / максимальных значений моих PlotData, я хочу, чтобы надписи каждый раз отображались в нижней части графика.

Вот так я устанавливаю автоматическое масштабирование, чтобы масштабирование зависело отминимальные / максимальные значения, чтобы увидеть только то, что нужно:

    // Auto scale the plot space to fit the plot data
[plotSpace scaleToFitPlots:[NSArray arrayWithObjects:dataSourceLinePlot, nil]];
CPTMutablePlotRange *xRange = [[plotSpace.xRange mutableCopy] autorelease];
CPTMutablePlotRange *yRange = [[plotSpace.yRange mutableCopy] autorelease];

[xRange expandRangeByFactor:CPTDecimalFromDouble(1.0)];
[yRange expandRangeByFactor:CPTDecimalFromDouble(8.15)];

Так что, когда я теперь хочу увеличить график, метки остаются там, где они есть.
В некоторых случаях они не видны, ноони должны быть видны все время.Какие-нибудь советы?Спасибо в Advance Cheers

// EDIT

Я уже работал с labelOffset, но он не работает, когда вы хотите увеличить изображение или изменить минимальные / максимальные значения.

1 Ответ

1 голос
/ 13 марта 2012

Если вы хотите, чтобы метки оси x были видны постоянно, даже при увеличении, вы должны установить CPTConstraints для оси.Следующий код должен сделать трюк:

CPTXYGraph *barchar = <#(create the chart here)#>
CPTXYAxisSet *axisSet = (CPTXYAxisSet *)barChart.axisSet;
CPTXYAxis *xAxis = axisSet.xAxis;
CPTConstraints *axisConstraints = [CPTConstraints constraintWithLowerOffset:0.0f];
xAxis.axisConstraints = axisConstraints; 
...