【问题标题】:d3 svg drawing rect bar chart not work in IE11d3 svg 绘制矩形条形图在 IE11 中不起作用
【发布时间】:2019-08-02 15:54:21
【问题描述】:

我正在使用 d3 完成一个动态条形图,它在谷歌浏览器中是完美的工作。

但是,它在 IE11 中不起作用。

这里是my code

问题是:

  1. 只对绘制背景表格起作用,而条形图不起作用。 这是IE中的实际情况 My code run in IE

    您可以看到第一部分,绘制背景在 IE 中完美运行,但是条形图丢失并且运行没有任何错误。

  2. 我用svg.polygon来画星星,我把画星星的代码分成两部分:第一部分我在表格内部(条形图上方)绘制,第二部分我在表格外部绘制,用于成为传奇。

图例中的星星可以正常打印,但是表格中的星星都被遗漏了,IE给出了错误代码:

SVG4602: SVG Point list has incorrect format and could not be completely parsed.

【问题讨论】:

    标签: javascript internet-explorer d3.js svg internet-explorer-11


    【解决方案1】:

    我解决了我的问题。

    代码引起的问题

    linear((new Date(d.collect_date) - starttime)/cal_hour+16)
    

    在 IE 中,由于某些日期设置,它无法运行代码 new Date(d.collect_date)(我猜) 所以在这种情况下,linear(...) 这段代码不会返回任何东西,它最终不会打印出任何条形图。

    所以我找到了改变获取日期方式的方法,它成功打印了条形字符,表格中的星星也是同样的问题。

    所以我把所有get x location方法改成:

    var temp_x = d.start.split(" ");
                var temp_y = temp_x[0].split("-");
                var temp_z = temp_x[1].split(":");
                    return linear((new Date(new Date(temp_y[0],(temp_y[1]-1),temp_y[2],temp_z[0],temp_z[1],temp_z[2])) - starttime)/cal_hour+16);
    

    在 chrome 和 IE 上都可以使用

    【讨论】:

      猜你喜欢
      • 2021-12-13
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多