我已经搜索了很长时间,并且发现了大量的旧资源,这些资源一度可以为我当前的问题提供解决方案。但是,Core Plot已经发展,如果以相同的方式实施,我发现的解决方案将不再起作用。我希望我可以得到最新的答案,因为我确信这是各种图形和图表的共同特征。

我当前的问题是,当我尝试右对齐绘图上的3个轴之一时,该轴本身(包括标题)确实移动了,没有刻度线或相关标签。我猜我可能还不完整。

这是我相关的轴生成代码:

CPTAxis *yRight = [[CPTXYAxis alloc] init];
yRight.Title = @"Right Axis";
yRight.titleOffset = 10.0f;
yRight.axisLineStyle = axisLineStyle;
yRight.majorTickLineStyle = axisLineStyle;
yRight.minorTickLineStyle = axisLineStyle;
yRight.labelTextStyle = axisTextStyle;
yRight.labelOffset = 3.0f;
yRight.majorIntervalLength = CPTDecimalFromFloat(10.0f);
yRight.minorTicksPerInterval = 5;
yRight.minorTickLength = 5.0f;
yRight.majorTickLength = 7.0f;

axisSet.axes = [NSArray arrayWithObjects:x, yRight, yLeft, nil];
self.hostView.hostedGraph.axisSet = axisSet;

//Next two lines are in charge of right aligning y axis
axisSet.yAxis.axisConstraints = [CPTConstraints constraintWithUpperOffset:0];
//axisSet.yAxis.tickDirection = CPTSignPositive; this is commented out because I havent found it to do anything, though may be necessary for it to work once complete.

CPTXYPlotSpace *plotSpace = (CPTXYPlotSpace *)hostView.hostedGraph.defaultPlotSpace;
x.plotSpace = plotSpace;
yLeft.plotSpace = plotSpace;
yRight.plotSpace = plotSpace;


我感觉到我所缺少的并不是很多,但是在这一点上我几乎没有找到要尝试的想法。

迷你方面的问题,iOS是否支持浮动轴? axisSet.yAxis.isFloatingAxis给我一个错误:(

感谢您提供任何帮助!

最佳答案

isFloatingAxis属性已删除,以支持轴约束。

yRight.axisConstraints = [CPTConstraints constraintWithUpperOffset:0];
yRight.coordinate = CPTCoordinateY;


情节空间的yRange是多少?当前的标签设置会将刻度和标签放在yRight的0、10、20等处。

10-08 05:49