D3.js 在工具提示d3中显示db中的文本和数据

D3.js 在工具提示d3中显示db中的文本和数据,d3.js,D3.js,我正在d3中使用工具提示功能。我想从数据库中获取数据,并将其显示在工具提示中,但在每一位信息之前都有标题。这是迄今为止只在一行显示所有信息的代码,没有标题: function mouseHandler(d, i) { d3.json("connection3.php?paperID="+d.ID, function(error,data) { var myList = "" data.forEach(function(d) {

我正在d3中使用工具提示功能。我想从数据库中获取数据,并将其显示在工具提示中,但在每一位信息之前都有标题。这是迄今为止只在一行显示所有信息的代码,没有标题:

function mouseHandler(d, i) {

d3.json("connection3.php?paperID="+d.ID, function(error,data) {

                var myList = ""
                data.forEach(function(d) {
                    myList = myList + d.ID + d.TITLE + d.AUTHOR;
                    })

                tooltip.transition()
                    .duration(200)
                    .style("opacity", .9);
                tooltip.html(myList)

            })
            }
我想使用像这样的变量html=ID:

标题:

作者:

;因此,每个标题后面都有来自数据库的相关信息,每个标题和信息都在单独的行中。但我似乎无法让它工作。我试过了

var html = "<p> ID: "myList + d.ID" " </p> <br> <p>TITLE: </p><br><p> Authors: </p><br>";
但是我得到了一个关于不明字符串的错误。我知道这可能是一个非常愚蠢的问题,但我已经被困在这个问题上很久了!我是d3新手,非常感谢您的帮助!提前感谢

使用d3.keys功能

var myList = ""
data.forEach(function(d) {
    d3.keys(d).forEach(function(key){
       myList = myList +"<p> "+key+": "+ d[key] +" </p><br>"
    });
});
d3.1对象

返回包含指定对象的属性名称的数组 关联数组

参考:

var data=[{id:123,标题:'item1'},{id:456,标题:'item2'}]; var myList= data.foreachd函数{ d3.keysd.forEachfunctionkey{ myList=myList++key.toUpperCase+:+d[key]+

}; }; document.writemyList;
太好了,谢谢你!当有多个作者时,工具提示信息被复制,只有作者被更改。我如何只允许信息被列出一次,而所有作者都在同一行?这可能是我的查询中的一个问题,即当一个ID有多个作者时,它会两次返回所有信息并更改作者名称。如果您知道如何解决这一问题,那么最好选择*从作者的内部连接选择ID,按ID从论文组中选择标题,作为authors.ID=addtitle.ID,其中authors.ID=。$\u GET[paperID]`@吉尔莎