【问题标题】:D3Plus Visualization with ReactJS使用 ReactJS 进行 D3Plus 可视化
【发布时间】:2019-06-11 19:59:05
【问题描述】:

我正在尝试从 Link 运行示例,但我得到的唯一结果是一个灰色框(单击它时没有任何反应)。我正在使用 d3plus-react 包,版本 0.5.2 和反应版本 16.7.0。这是我的代码:

import React, { Component } from "react";
import { Treemap } from "d3plus-react";

const methods = {
data: [
    { value: 100, name: "alpha", group: "group 1" },
    { value: 70, name: "beta", group: "group 2" },
    { value: 40, name: "gamma", group: "group 2" },
    { value: 15, name: "delta", group: "group 2" },
    { value: 5, name: "epsilon", group: "group 1" },
    { value: 1, name: "zeta", group: "group 1" }
  ],
  id: ["group", "name"],
  size: "value"
};

class Hierarcy extends Component {
  render() {
    return (
      <React.Fragment>
        <Treemap config={methods} />
      </React.Fragment>
    );
  }
}

export default Hierarcy;

如果有任何帮助,我将不胜感激 :) ps:我忘了说我是用create-react-app创建的应用程序

【问题讨论】:

    标签: javascript reactjs d3.js d3plus


    【解决方案1】:

    看来您必须使用groupBy: ["group", "name"] 而不是id

    不幸的是,链接的 Grouped TreeMap 可视化来自 d3Plus 的 1.0 版,您可以在此处查看旧示例,包括提到的 https://d3plus.org/examples/1.0/。 d3Plus-react 使用 d3Plus 的 2.0 版,当使用 Treemap 组件时,您使用的是d3plus-hierarchy,在这种情况下,一个 gruped 可视化看起来像这样https://d3plus.org/examples/d3plus-hierarchy/getting-started/,没有您想要的点击交互性。

    要在此版本中显示带有值的工具提示,有必要 通过tooltipConfig配置。

    const methods = {
      groupBy: ["group", "name"],
      data: [
        { value: 100, name: "alpha", group: "group 1" },
        { value: 70, name: "beta", group: "group 2" },
        { value: 40, name: "gamma", group: "group 2" },
        { value: 15, name: "delta", group: "group 2" },
        { value: 5, name: "epsilon", group: "group 1" },
        { value: 1, name: "zeta", group: "group 1" }
      ],
      tooltipConfig: {
        body: d => `<div>Value: ${d.value}</div>`,
        title: d => `${d.name}`
      }
    }
    

    【讨论】:

    • 现在我可以看到数据了,但是我只在两组(组 1 和组 2)中看到它,但看不到深度(不是用“组”和“名称”分组),比如在示例中。当我点击仍然没有任何反应时,我什至看不到带有数据的工具提示,只有“名称”中的名称。
    • 我更新了我的答案,不幸的是,我找不到如何在 d3Plus 2.0 版中实现点击功能,这种行为似乎仅在 1.0 版上可用。
    • 哦,我明白了。很遗憾,它没有这样做的选项。无论如何感谢您的回答!
    猜你喜欢
    • 1970-01-01
    • 2011-10-20
    • 2019-10-13
    • 2013-07-16
    • 2014-01-15
    • 2015-11-29
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多