D3.js Hello World

将上一篇文章中下载的zip解压缩后我们们得到了3个文件:d3.js、d3.min.js和许可证文件。在开发过程中,建议使用d3.js,它可以帮你深入到D3库中跟踪调试JavaScript代码。把d3.js和新建的index.html放在同一个文件夹里。

我们已经搭建了一个最简单的D3数据可视化开发环境。现在可以用我们最喜欢的文本编辑器编辑那个html文件,还可以用浏览器打开它来检查可视化的效果。

在HTML文件中引入d3.js后,我们就获得了一个全局变量:d3。d3.js 的功能就通过这个对象暴露出来

这个例子展示了d3.js实现数据可视化的典型理念:基于集合运算的声明式数据可视化。

请你注意上图中使用d3时经典的四把斧:d3总是要求使用者声明两个集合:DOM对象集和数据集,并根据集合运算实施数据与DOM对象的匹配,最后通过修改匹配的DOM对象来获得可视化的效果。

<!-- index.html -->

<!DOCTYPE html>

<html>
    <head>
        <meta charset="utf-8">
        <title>Hello D3</title>
        <script type="text/javascript" src="d3.js"></script>
        <style type="text/css">
            #barChart{
                background:#f0f0f0;
                padding:10px;
                font-family:Verdana;
            }
            #barChart .bar{
                left:0px;
                height:20px;
                background:#00ff00;
                margin:5px;
            }
        </style>
    </head>
    <body>
        <div id="barChart"></div>
        <script type="text/javascript">
            var data=[20,15,23,78,57,29,34,71]
            d3.select("#barChart")
                .selectAll(".bar") //指定要操作的DOM对象
                .data(data)        //指定要操作的数据
                .enter()           //计算缺失的DOM对象
                .append("div")     //添加缺失的DOM对象
                .text(function(d){return d;}) //设置新增DOM对象的文本
                .classed("bar",true)          //设置新增DOM对象的CSS类
                .style("width",function(d,i){return d + "px";}); 
               //设置新增DOM对象的宽度
        </script>
    </body>
</html>

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

  • https://github.com/jobbole/awesome-javascript-cn 包管理器管理着 ...
    孙雪冬阅读 11,250评论 3 66
  • 1.几种基本数据类型?复杂数据类型?值类型和引用数据类型?堆栈数据结构? 基本数据类型:Undefined、Nul...
    极乐君阅读 11,038评论 0 106
  • 取值赋值合体:1)html()1.没有参数-取值2.有参数-赋值2)css();1.有一个参数-字符串=》取值-对...
    刘晓洋阅读 1,459评论 0 0
  • 奶奶生前常说:“孩子,心诚则灵。” 于是,在每一个有星辰的夜晚,仰望漫天灿烂的星斗,我一次一次虔诚地许着同一个愿望...
    晴川鹦鹉阅读 1,630评论 0 2
  • 设计模式简介 软件设计具有良好的复用性,才是好的设计。但是软件复杂的变化却是服用新的天敌;软件设计复杂的根本原因有...
    竺沛阅读 1,738评论 0 0

友情链接更多精彩内容