【问题标题】:Formatting multiple axes in D3 indivdiually在 D3 中分别格式化多个轴
【发布时间】:2015-04-01 23:13:56
【问题描述】:

我正在关注Scatterplot Matrix example,但我有需要不同格式的轴。我有一些面向时间的变量和一些标准的数值变量。我希望轴具有不同的格式,因为目前,面向时间的标签以逗号显示(例如 2,005 而不是 2005)。我试过追加

   .tickFormat(d3.format("d"))

var xAxis = d3.svg.axis()
    .scale(x)
    .orient("bottom")
    .ticks(5)
    .tickFormat(d3.format("d"));

但这会将所有轴格式化为日期。有没有办法对每个轴进行不同的格式化?

【问题讨论】:

    标签: javascript d3.js axes


    【解决方案1】:

    再往下调用xAxis 来渲染轴:

    .each(function(d, i) {
      x.domain(domainByTrait[d]);
      d3.select(this).call(xAxis);
    });
    

    每个 trait d 调用该函数一次,因此您可以从那里调用

    xAxis.tickFormat(d3.format(...))
    

    .tickFormat(d3.time.format(...))
    

    在渲染轴之前。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2021-02-04
      • 2020-06-29
      • 2013-03-06
      • 2021-10-11
      • 1970-01-01
      • 2012-07-02
      相关资源
      最近更新 更多