0

我基于http://bl.ocks.org/hlvoorhees/5986172#index.html实现了一些东西。在最新的浏览器更新之后,我意识到我的应用程序中的文本节点以及示例中的文本节点现在都呈现为黑框(一周前它们看起来还不错)。

X3Dom D3 散点图

标签创建代码是(来自上面的示例)

var tickLabels = ticks.selectAll("billboard shape text")
  .data(function(d) { return [d]; });
var newTickLabels = tickLabels.enter()
  .append("billboard")
     .attr("axisOfRotation", "0 0 0")     
  .append("shape")
  .call(makeSolid)
newTickLabels.append("text")
  .attr("string", scale.tickFormat(10))
  .attr("solid", "true")
  .append("fontstyle")
    .attr("size", tickFontSize)
    .attr("family", "SANS")
    .attr("justify", "END MIDDLE" );
tickLabels // enter + update
  .attr("string", scale.tickFormat(10))
tickLabels.exit().remove();

X3DOM-Logdiv 不包含任何错误或警告。所以我不知道 X3DOM 是破坏了东西还是 D3,但由于它实际上是一个 X3DOM-Node,我会在那里找到问题.. X3Dom 和 D3 最近都没有更新他们的库 - 但是我尝试了旧版本,但仍然破坏了文本.

经测试

  • 铬版本 45.0.2454.101 Ubuntu
  • 火狐 42.0
  • 一些当前的野生动物园(不能确切地说,对不起)
4

1 回答 1

1

当我尝试使用大字体大小和变换以再次缩小它们时,我遇到了类似的问题。我通过使用小字体大小和quality属性来围绕黑色矩形工作,并且没有围绕它进行转换。对你来说,它可能看起来像这样:

.append("fontstyle")
    .attr("size", 0.5)
    .attr("quality","10")
    .attr("family", "SANS")
    .attr("justify", "END MIDDLE" );

quality属性用于过采样,因此即使您的文本节点很小,您也可以获得很好的文本渲染:http: //doc.x3dom.org/author/Text/FontStyle.html

我不确定这是否是 x3dom 错误,或者这是否是文本节点的预期行为,文本节点太小了。

于 2016-08-11T15:51:15.693 回答