我想创建矩形并提供相同的工具提示。
我的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”等工具提示?
答案 0 :(得分:6)
在SVG中添加工具提示的最简单方法是在要显示工具提示的元素上附加title
元素(请参阅例如this question)。
在您的代码中,这看起来像这样。
svggraph.append("rect")
// set attributes
.append("title")
.text(function(d) { return "Tooltip"; });