这是一张我认为可以快速说明问题的图片。您只需从 git hub 下载示例,转到曲线散点图示例并点击一个点即可显示点注释,然后只需滚动图表即可将点移出图表。
所以通常我们希望注释 float 在所有内容之上,但是当我们设置 axisContraints 时,在这种情况下我们将它们设置为:
x.axisConstraints = [CPTConstraints constraintWithRelativeOffset:0.5];
y.axisConstraints = [CPTConstraints constraintWithLowerOffset:0.0];
我们希望我们添加的注释与网格线、绘图线和绘图点一样绘制。
我已经尝试了以下测试,看看会发生什么,但这没有帮助。
// reorder layer
[annotationHostLayer insertSublayer:annotation.contentLayer atIndex:0];
[annotationHostLayer setNeedsDisplay];
它会在注释上绘制网格线和轴,但注释仍然漂浮在图形之外。
我正在使用 coreplot 中的示例代码,这里是 github link我一直在试验的图表是“曲线散点图”图。
更新:我一直在为 plotArea 使用 maskToBorder 和 maskToBounds。如果轴是在图层边界内绘制的,那么似乎对边界的屏蔽会起作用,但事实并非如此。这会剪辑 y 轴。我四处寻找其他剪辑代码,但无济于事。
最佳答案
隐藏位于所需区域之外的任何注释的内容层。使用绘图空间委托(delegate)来监视绘图空间的更改并根据需要显示或隐藏注释。
关于ios - Coreplot 注释绘制在轴上,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29110780/