D3.js图表​​在Internet Explorer 11中可见,但在Internet Explorer 11

时间:2016-02-11 15:57:22

标签: css internet-explorer d3.js svg

我有一个非常漂亮的日历报告,我在一台机器上创建,显示我公司的日常收入作为过去几年每天的颜色编码块。在最终得到一个配色方案并且几乎完成它之后,我去另一台机器上测试它 - 并且遇到了相当大的障碍。

这是我用作模板的报告: http://bl.ocks.org/mbostock/4063318

太棒了。而且,在Internet Explorer 11中,它看起来很棒。我从来没有想到复制代码和测试报告会产生一个空白页面,但就是这样。在该页面上,日历报告可见。在IE 11中。将代码复制到新的html文件并打开它,什么都不显示。但是,在Firefox中,一切都是可见的。原样。

现在,该页面的一部分指向

"//d3js.org/d3.v3.min.js"

我发现为了在firefox中完成这项工作,我必须在前面添加http:所以这不是我的问题。

我真的坐在我的办公桌旁,盯着打开的两个浏览器窗口并指向同一个html文件。一个包含我漂亮的报告,一个是完全空白的页面。

一些粗略的谷歌搜索显示IE 8或更低版本与svg存在问题。我似乎无法找到有关类似问题的人的任何参考资料。他们的情况似乎是IE10,你需要指定高度和宽度,而不仅仅是一个或另一个,以确保一切正常。

如果我可以按照自己的方式行事,我就会在所有要运行报告的计算机上运行Firefox,即使它只是针对那一件 !唉,我只是一个农民编码器,所以我必须让它发挥作用。在可怕的IE中。

是否有任何svg / html / d3.js编码器可以告诉我另一种方法来吐出我正在使用的数据,这样我就能得到我正在寻找的东西?

1 个答案:

答案 0 :(得分:1)

  

复制代码并测试报告会产生一个空白页

因为您输出了无效的HTML。初学者没有split(as.data.frame(a), rep(seq_along(b),b)) html元素。

将您的代码输出到head之类的文件中并在Firefox(特别是)中打开它,因为它的XML解析器会很快告诉您第一个XML解析器错误发生在哪一行和哪一行。您正在以标准模式而不是怪癖进行渲染,尽管暗示您的页面符合标准。

example.xhtml