【问题标题】:How to make core plot y axis marks as .5如何将核心图 y 轴标记为 0.5
【发布时间】:2019-05-14 14:47:23
【问题描述】:

我正在尝试将 y 轴标记设置为 0.5,但我不能使它们小于 1。这是我的代码。有什么建议么?谢谢

// 4 - Configure y-axis
CPTAxis *y = axisSet.yAxis;
y.title = @"";
y.titleTextStyle = axisTitleStyle;
y.titleOffset = -40.0f;
y.axisLineStyle = axisLineStyle;
y.majorGridLineStyle = gridLineStyle;
y.labelingPolicy = CPTAxisLabelingPolicyNone;
y.labelTextStyle = axisTextStyle;
y.labelOffset = 16.0f;
y.majorTickLineStyle = axisLineStyle;
y.majorTickLength = 4.0f;
y.minorTickLength = 2.0f;
y.tickDirection = CPTSignPositive;

NSInteger majorIncrement;
NSInteger minorIncrement;

// set if here to check for inr  5-13
if (self.iNRFlag) {
    majorIncrement = 1;
    minorIncrement = 1;
} else {
    majorIncrement = self.glucoseTick;
    minorIncrement = self.glucoseHalfTick;
}

【问题讨论】:

    标签: objective-c core-plot


    【解决方案1】:

    提供的代码不会创建任何刻度线或标签。如果您想要均匀间隔的刻度线,请使用默认标签策略 (CPTAxisLabelingPolicyFixedInterval) 并将 majorIntervalLength 设置为 @0.5。将 minorTicksPerInterval 设置为大于一 (1) 的值以在主要刻度线之间插入次要刻度线。将labelFormatter 设置为新的NSFormatter 以控制刻度标签的格式。

    【讨论】:

    • 嗨,你有这方面的示例代码吗?它不适合我。当我尝试这个时,CPTAxisLabelingPolicyFixedInterval = .5 它说“表达式不可分配”感谢您的帮助
    • y.labelingPolicy = CPTAxisLabelingPolicyFixedInterval; y.majorIntervalLength = @0.5; Core Plot 包含几个示例应用程序; Plot Gallery 应用程序中有很多轴标记示例。
    • 不幸的是,以下带有 xcode 10.2.1 的行会生成以下消息。 y.majorIntervalLength = @0.5;从不兼容的类型“NSNumber *”分配给“NSDecimal”
    • release-2.3 分支上使用Core Plot 代码。我认为 2.2 版甚至不会与 Xcode 10 一起编译。
    • 2.2 编译正常
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多