ios - 核心剧情: Y axis label alignment with bars

标签 ios cocoa-touch plot core-plot

我正在尝试执行与下图中的 (B) 类似的操作,即移动 y 轴标签,使其位于相关条形上方并左对齐。我有图表的左侧部分 (A)(基于本教程的部分 http://www.gilthonwe.com/2012/06/09/stacked-bar-chart-coreplot-ios/)。 根据我有限的核心情节经验,我可以看到 3 个选项。

i) 相对于当前位置移动所有 y 轴标签,使它们的左下角成为条形图的左上角。我找不到任何此类方法。

ii) 更改 y 轴,使条形图向任一侧延伸。更改我的刻度位置,使它们位于现有柱之间。这似乎是可能的,但要使数字正确(尤其是在图中我只使用数字,但实际上标签可以有任意数量的字符并向左延伸任意距离)。

iii) 为每个标签创建 CPTTextLayers,并完全删除 y 轴标签。这似乎是最简单/最干净的解决方案,但我一直无法弄清楚如何将任何文本层的左下角锚定到栏的左上角。

或者我猜 (iv) 这在核心情节中是不可能的。

非常感谢任何想法。

Changing y axis label positions

最佳答案

至少有两种不同的方法可以做到这一点:

  1. 使用 tickLabelDirection 将标签移动到轴的另一侧,并使用 barOffset 或通过修改数据源中的条形位置来调整条形位置为标签留出空间。

  2. 为自定义标签创建注释(类似于您的项目 iii.)。确定条形边缘的坐标取决于多个因素,包括 barWidthbarOffsetbarWidthsAreInViewCoordinates

关于ios - 核心剧情: Y axis label alignment with bars,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20894563/

相关文章:

MATLAB:用一个循环在一个轴上绘图:实线和图例

ios - 来自 iOS 主屏幕书签的 JSON-RPC 调用?

android - 从 android/Java 迁移到 OC/IOS

ios - 带有 UITableView 示例的 MagicalRecord

python - python中是否有一个函数可以填充两个轮廓线之间的区域,每个轮廓线由不同的函数给出?

r - 绘制光栅文件

javascript - wkWebView 播放本地音频失败

ios - 如何从 iOS 10 及以下版本的 WKWebView 获取 cookie?

iphone - 在其他方法中引用以编程方式创建的对象

ios - 将 UILabel 的基类 UIView 更改为自定义 UIView?