我正在使用Core Plot绘制一段时间的图形,目前将x轴'labeledPolicy设置为CPTAxisLabelingPolicyAutomatic
。但是,我想使用右下角绘制图像。所以我需要阻止绘图在该区域绘制标签。我想过使用labelExclusionRanges,但这需要从物理大小到时间值范围的映射。有没有更简单的方法来实现我的目标?
尝试将Eric的答案转换为代码可以获得一个图像,但它现在放在x轴的旁边,而我真的希望它位于x轴的右边标签。它也部分取决于图表的主机视图...
[更新:需要设置layer.frame以实际查看图像。]
- (void)annotateXAxisOfGraph:(CPTGraph *)graph withImage:(CPTImage *)image
{
CPTBorderedLayer *layer = [[[CPTBorderedLayer alloc] init] autorelease];
layer.fill = [CPTFill fillWithImage:image];
layer.frame = CGRectMake(0.0f, 0.0f, 40.0f, 40.0f);
CPTXYAxisSet *axisSet = (CPTXYAxisSet *)graph.axisSet;
CPTLayerAnnotation *layerAnnotation = [[[CPTLayerAnnotation alloc] initWithAnchorLayer:axisSet.xAxis] autorelease];
layerAnnotation.contentLayer = layer;
layerAnnotation.rectAnchor = CPTRectAnchorBottomRight;
[graph addAnnotation:layerAnnotation];
}
答案 0 :(得分:0)
制作CPTBorderedLayer
并使用您的图片制作fill
。使用此图层作为图层注释的内容图层,并将注释附加到所需位置的图形。