问题标签 [icicle-diagram]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
1374 浏览

javascript - d3js分区冰柱图修改


因此,我正在尝试从此链接修改可缩放冰柱图表,以便我可以拥有完全相同但最后一个节点,浅绿色的节点彼此堆叠而不是彼此相邻。这对我来说非常复杂,因为冰柱图的逻辑只能在这一点上打破。到目前为止,能够参考这一点只能由 d 的 d.depth 属性给出。我仍然在尝试寻找是否有更优雅的解决方案。
这是可缩放分区 Icicle 的代码

我所有的属性 x、y、宽度和高度都必须有不同的逻辑才能创建我相信的堆叠矩形......但我怎么能确定呢?任何帮助深表感谢。谢谢!

0 投票
1 回答
1102 浏览

javascript - d3js 可缩放冰柱数据

我想修改d3js的可缩放冰柱图以包含我自己的数据。但是,我找不到“readme.json”文件来修改数据,图形也没有在本地呈现。我在哪里可以找到这个文件,或者如果我创建自己的 json 文件,数据应该如何格式化?

0 投票
1 回答
2223 浏览

javascript - 如何将文本添加到 Zoomable Icicle d3 图表?

如何在此图中向矩形添加文本?

http://bl.ocks.org/mbostock/1005873

0 投票
0 回答
375 浏览

javascript - 如何根据需要自定义 D3 可缩放冰柱布局?

我需要自定义此处提供的 D3 可缩放冰柱布局示例:http: //bl.ocks.org/mbostock/1005873

我需要如下定制:所需的冰柱布局

布局代表文件夹和文件 - 文件夹代表父项,文件代表子项。文件夹按日期排序,并显示最新访问的文件夹以腾出空间。箭头允许用户滚动到其他文件夹。这些文件由网格中父级下方适当空间中的直接父级下方的缩略图表示。

总之,我需要的是以下内容:

  1. 信息按访问日期排序。
  2. 应根据可用空间隐藏较旧的信息。
  3. 将箭头图标添加到具有隐藏信息的文件夹区域。
  4. 单击箭头应该可以看到较旧的信息。
  5. 文件显示在其直接父级下方的网格中。

这些定制是可能的吗?如果是这样,有没有人对如何去做有想法?

非常感谢。

0 投票
1 回答
324 浏览

javascript - 如何在 D3 的可缩放冰柱布局中获取文本标签的旋转?

我在此处提供的可缩放冰柱布局示例中添加了标签:http: //bl.ocks.org/mbostock/1005873

我使用以下方法根据可用空间旋转标签:

如果空间太小而无法保持水平,它会将标签旋转 90'。

我想知道的是如何获得每个 d 的旋转值?

0 投票
1 回答
1431 浏览

javascript - 如何重命名 D3 图中的节点

我需要使用 Icicle 示例(http://bl.ocks.org/mbostock/4347473)提供“重命名”功能来重命名节点。

我找不到与我想做的类似的任何解决方案,并且由于浏览器通常不允许右键单击,我想知道是否有人对如何允许此选项以及如何进行有任何建议允许某人能够重命名特定节点的名称。

谢谢。

0 投票
1 回答
1078 浏览

javascript - 可缩放的冰柱 d3 在图表中添加标签

我已阅读有关将标签插入 d3 图表的帖子,但我没有看到文字

这是帖子:如何将文本添加到 Zoomable Icicle d3 图表?

这是我的代码页面:http: //mirkotinelli.altervista.org/icicle/altro.html

0 投票
1 回答
756 浏览

javascript - 如何使用车道名称创建可缩放的冰柱

我正在尝试使用 d3.js 创建一个可缩放的冰柱。我面临标签名称未显示的问题。

这是我的源代码。请让我知道这有什么问题。

HTML:

耀斑.json:

提前致谢

0 投票
0 回答
240 浏览

d3.js - d3.js - 硬刷新后存储选择数据

我很好奇为什么我的 d3 画布会保存数据,即使在我对浏览器进行了硬刷新之后也是如此。现在,如果我“放大”一个 g 元素,它的 dy、dx、w 和 h 会发生变化。因此,如果我使用过滤器并重新渲染冰柱,g 元素的位置与之前相同,但高度和宽度就像是新加载的一样。这会留下很多空白。通过一些试验,我发现 d3 以某种方式保存了绑定到 g 元素的所有数据。我将其构建为 Ruby on Rails 项目的前端。我试图用 canvas.selectAll("svg > *") 清除选择,但它似乎不起作用。我构建布局如下:

--------------------更新--------
我解决了我最初的 d3 保存问题通过将宽度和高度设置为画布的宽度和高度来确定组的宽度和高度。

这是一种非常 hacky 的方式,但是在重新渲染画布后不再有空格。然而,现在出现的问题是一些矩形开始与其他矩形重叠,导致并非所有数据都显示出来。这是因为它分层渲染项目而不是基于 x,y 位置。所以我的问题仍然存在:

D3 是否缓存元素上的数据(如宽度)?

0 投票
1 回答
3181 浏览

javascript - D3 Icicle 图中是否可以有多个父/根节点?

我是 d3 的新手,目前正在研究Icicle 布局示例。我有两个问题:

  1. 在这个例子中是否可以有多个顶级节点?换句话说,我们可以有 3 个顶级节点(“flare1”、“flare 2”和“flare 3”),而不是“flare”的单个顶级节点,然后它们可以有各自的子节点吗?我尝试将 json 数据作为对象数组导入,但这不起作用。

如果不可能有多个顶级节点,我该如何隐藏根节点(“flare”),以便第二级节点(“vis”、“util”、“animate”)看起来是顶级的节点?

  1. 我们如何根据节点在 json 文件中的位置而不是它们的大小对节点(在特定级别上)进行排序?换句话说,我们如何对上例中的二级节点进行排序,使它们按照“分析”、“集群”、“图”等的顺序(从左到右)出现(它们在 json 文件中的顺序) ); 而不是他们当前的顺序(“vis”、“util”、“animate”等)。