D3.JS试图格式化轴的第一个刻度的文本

NewToJS

我正在尝试编写一个函数来选择此轴最后一个刻度内的文本,并在其前面加上“ $”(在这种情况下,文本为$ 100)

在此处输入图片说明

到目前为止,我已经使用此原型选择了最后一个刻度:

d3.selection.prototype.last = function() {
  var last = this.size() - 1;
  return d3.select(this[0][last]);
};

//first I select all of the ticks:
var tickLabels =  d3.selectAll("g.cardbasegroup g.yaxis g.tick");

//and then use that prototype to select the last one:
var lastTick = tickLabels.last();

...但是现在我该如何在刻度中抓取该文本并在其前面加上“ $”?

达米安·法约尔(Damien Fayol)

你可以做 :

 var textNode = lastTick.select('text');
 textNode.text('$' + textNode.text());

另一种进行方法是使用该.tickFormat方法。

var nbTicks = 5;
var axis = d3.svg.axis()
    .ticks(nbTicks)
    .tickFormat(function(d, i) {
        if(i == nbTicks) {
            return '$' + d;
        }
        return d;
    });

此方法的问题在于的文档linear.ticks(用于生成正确的滴答数)告诉我们:

指定的计数只是一个提示;比例尺可能会根据输入域返回更多或更少的值。

参考:

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

如何强制d3的日期轴为未满的第一个月和最后几个月绘制刻度线[FIDDLE UPDATED]?

来自分类Dev

如何删除D3轴刻度中的逗号并删除最后一个刻度?

来自分类Dev

D3 - 创建一个带有 3 个固定 y 轴刻度的图表

来自分类Dev

D3js 第一个刻度标签丢失

来自分类Dev

我无法使用D3看到第一个对象数据的div

来自分类Dev

d3数组中缺少第一个值

来自分类Dev

更新间隔内的第一个d3过渡不过渡

来自分类Dev

d3 在附加圆圈时跳过数组中的第一个索引

来自分类Dev

d3 +添加文本标签+格式

来自分类Dev

D3图缺少的文本元素与轴上的刻度一样多

来自分类Dev

D3:使用.tickValues()方法格式化年份

来自分类Dev

分别在D3中格式化多个轴

来自分类Dev

d3 - 如何在 x 轴上格式化日期

来自分类Dev

D3折线图,显示第一个和最后一个点的值

来自分类Dev

D3强制布局:分别定位第一个和最后一个节点

来自分类Dev

如何在C3.js中格式化X轴刻度值

来自分类Dev

默认刻度线设置d3

来自分类Dev

if 语句中的 d3 刻度值

来自分类Dev

d3 d3时间轴插件日期格式

来自分类Dev

d3 d3时间轴插件日期格式

来自分类Dev

D3 x轴刻度格式和刻度值问题

来自分类Dev

D3轴在图形顶部渲染

来自分类Dev

SVG外部的d3轴渲染

来自分类Dev

反转Y轴D3

来自分类Dev

更新D3轴标签

来自分类Dev

每周D3的X轴

来自分类Dev

约束d3中的轴标签

来自分类Dev

轴未在D3图中显示

来自分类Dev

D3 /画布:不显示轴