如何将一百万个凹坑测量轴显示为 1000k 而不是 1m?

How to display one million in dimple measure axis as 1000k instead of 1m?

我们使用 dimpleJs 在图表的 y 轴上显示价格值。当价格超过100万时,在图表显示时自动换算成1m。我希望以千或十万/数十万的形式显示数百万,请参阅 Indian Numbering System. How to do it? I have searched and tried this 答案 但它似乎不起作用。下面是我的代码片段:

const yAxis = chart.addMeasureAxis('y', 'total');
yAxis.tickFormat = function(d) {
  let result = d;
  if ((d / 1000) >= 1) {
    result = d / 1000 + 'K';
  }
  return result;
};

看看 johnkiernander 在这个话题上的回答:https://github.com/ramnathv/rCharts/issues/421

Dimple 只是将字符串传递给 d3.js 的格式函数,因此您不能将函数传递给 tickformat,您应该可以像这样重写 _getformat 函数:

  yAxis._getFormat = function() {
    return function(d) {
      let result = d;
      if ((d / 1000) >= 1) {
        result = d / 1000 + 'K';
      }
      return result;
    };
  };