如何在 D3 中为矩形添加工具提示.js从 JSON 读取



我想创建矩形并为其提供工具提示。

我的 json 数据是:

[
   [{ "a":10},{"b":11}],
   [{ "c":1},{"d":1}]
]

我的代码是:

var svggraph = d3.select("#graph").append("svg").attr("id","svggraph")
    .attr("width", 400)
    .attr("height", 300)
    .append("g")
    .attr("transform", "translate(50," + margin.top + ")");
var yvar = 20;
var x_axis = 1;
d3.json("Data.json", function(data) 
    {
        rectdata = data;
        for(x=0;x<rectdata.length;x++)
        {
          console.log(rectdata[x]);
          for (index=0;index<2; index++)
          {
            svggraph.append("rect")
                              .attr("x", setxaxis(index)) 
                              .attr("y", setyaxis(yvar))
                              .attr("width", 20)
                              .attr("height", 21)
                              .style("fill","white")    
                              .style("stroke","black");
                  svggraph.append("svg:title").text(function(d) { return "Tooltip"; });
          }
            yvar = yvar+21;
        }

    });

function setxaxis(x)
{

    if (x==4) return;
    if(x==0) 
    {
        return x_axis=0
    }
    else
    {
        x_axis=x_axis+25;
    }
    return x_axis; 
}
function setyaxis(y)
{
    return y; 

}

如何在相应矩形上创建的 2X2 矩形数组上添加"A:10"或"B:11"等工具提示?

在 SVG 中添加工具提示的最简单方法是将title元素附加到要显示其工具提示的元素中(例如,请参阅此问题)。

在您的代码中,这看起来像这样。

svggraph.append("rect")
  // set attributes
  .append("title")
  .text(function(d) { return "Tooltip"; });

最新更新