小编Use*_*403的帖子

如何用d3.js制作虚线图例

我通常通过添加一个rect非常小的高度来制作一个线条图例,使它看起来像一条线.

但现在我需要一个虚线传奇.我不能用我以前的方式做到这一点.任何人都可以向我展示如何append('path')使用d3.js 制作线条图例的快速示例吗?

虚线传奇的例子

d3.js

4
推荐指数
1
解决办法
3503
查看次数

计算数组javascript中的百分比

我有一个像这样的数组:

var data = 
    [
       {label:1, quater :'Q1', y:34},
       {label:2, quater:'Q1', y:20},
       {label:3, quater:'Q1', y:30},

       {label:1, quater:'Q2', y:77},
       {label:2, quater:'Q2', y:52},
       {label:3, quater:'Q2', y:3},

       {label:1, quater:'Q3', y:65},
       {label:2, quater:'Q3', y:12},
       {label:3, quater:'Q3', y:9},

       {label:1, quater:'Q4', y:77},
       {label:2, quater:'Q4', y:34},
       {label:3, quater:'Q4', y:5}
    ];
Run Code Online (Sandbox Code Playgroud)

我的目标是在每个对象中添加“百分比”。每个“百分比”是当前对象中 y 值除以 Q1 到 Q4 的四分之一中 y 值之和的百分比。例如,第一个 boject 中的百分比应该是 34/(34+77+65+77) 下面的代码是我尝试过的。它可以正确工作并计算数据。我是javascript新手,所以我一步步计算数据,这使得代码看起来很长。

我想知道什么是更智能的方法来计算数据以使代码更短?谢谢!

var quater = ["Q1","Q2","Q3","Q4"];
var sum = 0;
var arr = [];
for(var i = 0; i<quater.length; i++){
  for(var j = 0; j<data.length; …
Run Code Online (Sandbox Code Playgroud)

javascript

2
推荐指数
1
解决办法
1万
查看次数

标签 统计

d3.js ×1

javascript ×1