自定义Y轴在AnyChart中

问题描述

我有一个要求,其中y轴标签必须为以下内容: 1,0.1,0.01,0.001,0

是否可以在AnyChart中实现此自定义y轴?

解决方法

或多或少的可能性。您可以使用以下设置来设置所需的对数刻度:

var logScale = anychart.scales.log();
logScale.minimum(0);
logScale.maximum(1);

// Get ticks
var ticks = logScale.ticks();
ticks.count(4);

// Minor ticks
var minorTicks = logScale.minorTicks();
minorTicks.count(3);

chart.yScale(logScale);
chart.yAxis({minorTicks: true,minorLabels: true});

但是,据我所知,不可能从0.001跳到0。这是因为在内部,从0.001跳到0存在很大的数字差距,而我们在保持图表比例的同时不能跳过一致。

enter image description here

演示:https://playground.anychart.com/CnDenhWb/2

另一方面,如果您真的只想显示[1,0.1,0.01,0.001,0],则可以添加以下代码:

var ticksArray = [1,0];
chart.yScale().ticks().set(ticksArray);

这会将其他标签隐藏在0.001和0之间。

演示:https://playground.anychart.com/ABxQ3oBc/1

enter image description here

,

您可以使用只有logScale并应用手动要求的刻度的方法来实现。有关详细信息,请检查the sample on the playground。 结果如下: enter image description here

相关问答

Selenium Web驱动程序和Java。元素在(x,y)点处不可单击。其...
Python-如何使用点“。” 访问字典成员?
Java 字符串是不可变的。到底是什么意思?
Java中的“ final”关键字如何工作?(我仍然可以修改对象。...
“loop:”在Java代码中。这是什么,为什么要编译?
java.lang.ClassNotFoundException:sun.jdbc.odbc.JdbcOdbc...