javascript - 如何将数组打印到屏幕上? SVG/D3/JS

标签 javascript svg d3.js

我有一个力布局图,当我单击节点时,数组会打印到控制台。

此列表是仅包含选定节点的数组。因此,列表将根据选择/取消选择的节点而变化。

我想要做的是让屏幕的一部分显示所选节点的数组/列表。我希望它与控制台类似,但我需要它自行更新,而不是每次单击节点时都打印出数组,我需要它只是一个列表 - 没有重复项。我想知道如何做到这一点以及如何将列表文本实际附加到 SVG

--------------------已添加代码 -HTML

<!DOCTYPE html>
<html>
    <head>
        <meta http-equiv="content-type" content="text/html;charset=utf-8">
        <title>Cloud</title>        
            <script type="text/javascript" src="network.json"></script>
            <script src="http://ajax.googleapis.com/ajax/libs/jquery/1.11.1/jquery.min.js"></script>
            <link rel="stylesheet" href="http://ajax.googleapis.com/ajax/libs/jqueryui/1.11.2/themes/smoothness/jquery-ui.css" /> 
            <script src="http://ajax.googleapis.com/ajax/libs/jqueryui/1.11.2/jquery-ui.min.js"></script>‌​
            <script src="http://d3js.org/d3.v3.min.js" charset="utf-8"></script>

    </head>
    <body>
    <div class="ui-widget">
            <input id="search">
            <button type="button" onclick="searchNode()">Search</button>
        </div>      
        <svg id="cloud" width="800" height="600" ></svg>        
        <form>
        Orientation
        <select id="myListOrientation" onchange="orientation()">
        <option selected="selected">Force</option>
        <option>Portrait</option>
        <option>Landscape</option>
        </select>       
        </form> 

        <link href="ajs_network1.css" rel="stylesheet" type="text/css" />
        <script src="ajs_network1.js" type="text/javascript"></script>

    </body>
</html>

最佳答案

如果没有 JavaScript 代码,就很难给您解决问题的确切答案,因此我会给您一个更通用的答案。

第 1 步:在 html 代码中创建一个 div 来包含数组

<div id="arrayStrContainer"></div>

第 2 步:单击时,将对象的字符串化版本放入屏幕

node = d3.selectAll('g node');
node.on('click', function(d) {
    // console.log(d.arrayAttr) // what you did before
    d3.select('#arrayStrContainer').text(JSON.stringify(d.arrayAttr));
    // this will override whatever was in the div with the new array. 
})

关于javascript - 如何将数组打印到屏幕上? SVG/D3/JS,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27227976/

相关文章:

d3.js v5 - Promise.all 替换 d3.queue

javascript - 基本身份验证是正确的选择吗?

javascript - 从 javascript 捕获 window.open

javascript - 火力基地。授予客户端直接写入服务器上数据库的访问权限是否安全?

javascript - 将 Svg 绘制到 Canvas ,包括嵌入在 svg 中的图像

javascript - 使用 D3.js 从 MySQL 数据库绘制条形图

javascript - D3 如何在变换缩放/平移时保持元素相同大小

javascript - HTML5 网络套接字 : max number of open connections?

javascript - 有没有办法在 d3.js 中获取路径的子集/部分?

qt - QML - 如何将 SVG DOM 加载到图像中