【问题标题】:the axis is drawn under the plot in core plot轴绘制在核心图中的图下方
【发布时间】:2014-09-23 14:05:58
【问题描述】:

我有一个图表,除了 x 轴和 y 轴之外,我想在此图表中添加两个蓝色轴。但是,这些蓝色轴出现在图下方。知道如何将蓝色轴放在图的顶部吗?提前谢谢你。

    blueAxisList = [[NSMutableDictionary alloc] init];


    CPTXYAxis *blueAxis = [blueAxisList objectForKey:name];
    blueAxis = [[CPTXYAxis alloc] init];
    blueAxis.coordinate = CPTCoordinateX;

    blueAxis.plotSpace = plotSpace;

    CPTMutableLineStyle *lineStyle = [CPTMutableLineStyle lineStyle];

    lineStyle.lineWidth = 3.f;

    blueAxis.axisLineStyle = lineStyle;
    blueAxis.minorTickLineStyle = nil;
    blueAxis.majorTickLineStyle = nil;
    blueAxis.labelingPolicy = CPTAxisLabelingPolicyNone;

    // Line cap on lhs
    CPTLineCap *lineCap = [CPTLineCap lineCap];
    lineCap.size      = CGSizeMake(8., 60.);
    lineCap.lineStyle = lineStyle;

    lineCap.lineCapType = CPTLineCapTypeRectangle;
    const double axisLength = plotSpace.xRange.lengthDouble;
    blueAxis.visibleAxisRange = [CPTPlotRange plotRangeWithLocation:plotSpace.xRange.location length:CPTDecimalFromDouble(axisLength)];
    blueAxis.axisLineCapMax = lineCap;

    NSMutableArray *axesList= [graph.axisSet.axes mutableCopy];

    [axesList addObject: blueAxis];
    graph.axisSet.axes = axesList;

【问题讨论】:

  • 如果不是,请在将绘图添加到图表后尝试将 2 个蓝色轴添加到图表中。
  • @weezma2004 剧情不断更新,因此没有AFTER。你认为我可以使用图层来解决它吗?我试图弄清楚如何,但找不到任何东西。

标签: plot core-plot axis


【解决方案1】:

使用额外的绘图代替使用轴在绘图上画线。如果两条线使用相同的线型,则可以用相同的图绘制两条线。将蓝色绘图添加到绿色绘图之后的图形中,将其绘制在顶部。

【讨论】:

  • 非常感谢您的宝贵时间。用户应该能够移动蓝线,这就是我使用轴的原因。绿色图也是连续绘制的(它是一个实时信号)。你还觉得我能做点什么吗?你认为我可以使用图层吗? @EricSkroch
  • 绘图和轴层。您可以更改顺序,但不能混合类型(所有轴将在一起,所有图都将在一起)。您也可以轻松更改绘图线的位置。只需在绘图上调用-reloadData 并为其提供新的数据点。画一条线只需要两点,所以重新加载操作应该很快。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2011-03-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多