• D3.js 第一个程序 HelloWorld


    一、HTML 是怎么输出 HelloWorld 的

    <html> 
      <head> 
            <meta charset="utf-8"> 
            <title>HelloWorld</title> 
      </head> 
        <body> 
            <p>Hello World 1</p>
            <p>Hello World 2</p>
        </body> 
    </html>

       会在浏览器中输出两行文字,如下图:

      11

    二、用 JavaScript 来更改 HelloWorld

      对于上面输出的内容,如果想用 JavaScript 来更改这两行文字,怎么办呢?我们会添加代码变为:

    <html> 
      <head> 
            <meta charset="utf-8"> 
            <title>HelloWorld</title> 
      </head> 
        <body> 
        <p>Hello World 1</p>
        <p>Hello World 2</p>
            <script>
            var paragraphs = document.getElementsByTagName("p");
            for (var i = 0; i < paragraphs.length; i++) {
              var paragraph = paragraphs.item(i);
              paragraph.innerHTML = "I like dog.";
            }          
            </script> 
        </body> 
    </html>

      结果变为:

      12

    三、用 D3 来更改 HelloWorld

      如果使用 D3.js 来修改这两行呢?只需添加一行代码即可。注意不要忘了引用 D3.js 源文件。

    <html> 
      <head> 
            <meta charset="utf-8"> 
            <title>HelloWorld</title> 
      </head> 
        <body> 
            <p>Hello World 1</p>
            <p>Hello World 2</p>
            <script src="http://d3js.org/d3.v3.min.js" charset="utf-8"></script> 
            <script>  
              d3.select("body").selectAll("p").text("www.ourd3js.com");      
            </script> 
        </body> 
    </html>

       结果会变为:

      13

      也实现同样的功能,但是却显得十分简洁。不错,其实 D3.js 中的所有功能在 JavaScript 中都能实现,它仅仅是一个函数库而已。D3 所做的事就是减轻你的工作量,以及使你的代码十分简单易懂。

      接下来改变字体的颜色和大小,稍微修改上述代码:

    //选择<body>中所有的<p>,其文本内容为 www.ourd3js.com,选择集保存在变量 p 中
    var p = d3.select("body")
              .selectAll("p")
              .text("www.ourd3js.com");
     
    //修改段落的颜色和字体大小
    p.style("color","red")
     .style("font-size","72px");

      上面的代码是先将选中的元素赋值给变量 p,然后通过变量 p 来改变样式,这样可以使代码更整洁。

      这里涉及一个概念:选择集

      使用 d3.select() 或 d3.selectAll() 选择元素后返回的对象,就是选择集。

      另外,有人会发现,D3 能够连续不断地调用函数,形如:

      d3.select().selectAll().text()

      这称为链式语法,和 JQuery 的语法很像,常用 JQuery 的朋友一定会感到很亲切。

     

  • 相关阅读:
    ARCDesktop 学习笔记(一) 添加地图图层
    ARCGIS 开发常用技巧参考
    关于引用动软代码 找不到dll命名空间问题
    银行转账手续费
    Silverlight 笔记
    地图API
    (转)使用ImageBrush替换PictureMarkerSymbol以加强graphic显示性能
    WPF 网摘
    ArcCatalog添加GISserverIP问题
    ARCGIS 10 中文版 3D Analyst Tools等未授权问题
  • 原文地址:https://www.cnblogs.com/LO-ME/p/5382606.html
Copyright © 2020-2023  润新知