我正在尝试使用 d3.js 从 mysql 表中绘制关系图。这是一个示例表来解释我想要实现的目标。
+----+---------+-------+------+
| id | name | entry | type |
+----+---------+-------+------+
| 1 | ObjectA | 100 | ID1 |
| 2 | ObjectA | 101 | ID1 |
| 3 | ObjectB | 101 | ID1 |
| 4 | ObjectB | 102 | ID1 |
| 5 | ObjectC | 102 | ID1 |
| 6 | ObjectC | 100 | ID1 |
| 7 | ObjectA | 200 | ID2 |
| 8 | ObjectA | 201 | ID2 |
| 9 | ObjectB | 201 | ID2 |
| 10 | ObjectB | 202 | ID2 |
| 11 | ObjectC | 202 | ID2 |
| 12 | ObjectC | 200 | ID2 |
+----+---------+-------+------+
ObjectA 有 ID1 和 101 连接到 ObjectB ID1 101
ObjectB 有 ID1 和 102 连接到 ObjectC ID1 102
ObjectC 有 ID1 和 100 连接到 ObjectA ID1 100
我的最终目标是将 ObjectA、ObjectB、ObjectC 显示为三个单独的圆圈,它们相互连接,蓝色和红色线条代表 ID1 和 ID2 关系。
到目前为止,我正在将表格输出到 json,正如我在我读过的视频和内容中广泛推荐的那样。我为此使用php。
[
{
"id": "1",
"name": "ObjectA",
"entry": "100",
"type": "ID1",
},
etc..
然后从 html 文件中读取
d3.json(
"mysql_table_to_json.php?table=objects",
function (error, json) {
then something..
})
我还没有弄清楚的东西..我发现我很难把我的头包裹在javascript上,因为我自己习惯了php和python编码。我真的真的真的很希望somone会同情我,并举出一个我可以开始乱搞的小例子。
所以任何关于如何进行的想法和例子都将非常感激。