首页
Python
Java
IOS
Andorid
NodeJS
JavaScript
HTML5
【
【 D3.js 入门系列 --- 5 】 怎样加入坐标轴
】的更多相关文章
【 D3.js 入门系列 — 11 】 入门总结
D3 新专题首页 一转眼,这个入门系列已经积累了二十二篇文章之多,我想作为 D3.js 这款数据可视化工具的入门来说已经足够了.相信仅仅要看完本系列.以后全然能够在辅以查询的情况下完毕大部分可视化工作. D3.js 最早的 v1.0 版本号是由 Michael Bostock 于2011年2月18日公布,其后经过多人的不断完好,眼下最新的版本号为 v3.4.11.从公布至今三年多的时间里,D3.js 在国外不断有人尝试并制作教程.成为了流行的数据可视化工具.可是眼下在国内能查询到中文资料还比較少…
【 D3.js 入门系列 — 1 】 第一个程序 HelloWorld
记得以前刚上大一学 C 语言的时候,写的第一个程序就是在控制台上输出 HelloWorld .当时很纳闷,为什么要输出这个.老师解释说所有学编程入门的第一个程序都是在屏幕上输出 HelloWorld,这是惯例.呵呵,想来真是令人怀念. 好了,言归正传吧.本文的主要内容也是围绕 HelloWorld,不过不是单纯的输出. 1. HTML 是怎么输出 HelloWorld 的 都知道 HTML 吧,如果不知道请下百度一下吧.在 HTML 中输出 HelloWorld 是怎样的呢,先看下面代码: <h…
【 D3.js 入门系列 --- 3 】 做一个简单的图表!
前面说了几节,都是对文字进行处理,这一节中将用 D3.js 做一个简单的柱形图. 做柱形图有很多种方法,比如用 HTML 的 div 标签,或用 svg . 推荐用 SVG 来做各种图形.SVG 意为可缩放矢量图形(Scalable Vector Graphics),SVG 使用 XML 格式定义图像,不清楚什么是SVG的朋友请先在 w3cschools 学习下,内容很少,很快就能掌握,不需要记住各种标签,只要知道大概是什么就行,用的时候再查. 先看下面的代码: <script src="…
【 D3.js 入门系列 --- 2.1 】 关于如何选择,插入,删除元素
在D3.js中,选择元素的函数有两个:select 和 selectAll . 先说明一下它们的区别: select 是选择所有指定元素的第一个 selectAll 是选择指定元素的全部(以用于后面同时操作) 来看一个具体的例子,现有如下代码: <html> <head> <meta charset="utf-8"> <title>select,append,exit</title> </head> </…
【 D3.js 入门系列 --- 2 】 如何使用数据和选择元素
接着上一讲的内容,这次讨论如何选择元素和使用数据. 现在页面中有三行文字,代码为: <p>Hello World 1</p> <p>Hello World 2</p> <p>Hello World 3</p> 定义一个集合set,里面有三个元素: var set = ["I like dog","I like cat","I like snake"]; 要用这三个字符串…
【 D3.js 入门系列 --- 1 】 第一个程序HelloWorld
下面开始用D3.js处理第一个简单问题,先看下面的代码: <html> <head> <meta charset="utf-8"> <title>HelloWorld</title> </head> <body> <p>Hello World 1</p> <p>Hello World 2</p> </body> </html> 如果…
【 D3.js 入门系列 --- 0 】 简介和安装
D3的全称是(Data-Driven Documents),顾名思义可以知道是一个关于数据驱动的文档的javascript类库.如果你不知道什么是javascript,请先学习javascript的相关知识. 说得简单一点,D3.js主要是用于操作数据的,它通过使用HTML.SVG.CSS来给你的数据注入生命,即转换为各种简单易懂的绚丽的图形. 先看一个简单的例子. 现在有一组数据, [ 4 , 32 , 15 , 16 , 42 , 25 ] ,现在我希望让人一眼就看出他们的大小关系,怎…
【 D3.js 入门系列 --- 2 】 怎样使用数据和选择元素
本人的个人博客首页为: http://www.ourd3js.com/ ,csdn博客首页为:http://blog.csdn.net/lzhlzz/. 转载请注明出处,谢谢. 接着上一讲的内容,这次讨论怎样选择元素和使用数据. 如今页面中有三行文字.代码为: <p>Hello World 1</p> <p>Hello World 2</p> <p>Hello World 3</p> 定义一个集合set,里面有三个元素: v…
【 D3.js 入门系列 --- 2.1 】 关于怎样选择,插入,删除元素
本人的个人博客首页为: http://www.ourd3js.com/ ,csdn博客首页为:http://blog.csdn.net/lzhlzz/. 转载请注明出处,谢谢. 在D3.js中,选择元素的函数有两个:select 和 selectAll . 先说明一下它们的差别: select 是选择所有指定元素的第一个 selectAll 是选择指定元素的所有(以用于后面同一时候操作) 来看一个详细的样例,现有例如以下代码: <html> <head> <meta cha…
【 D3.js 入门系列 --- 0 】 简介及安装
家是我的个人博客: http://www.ourd3js.com/ ,csdn博客首页为:http://blog.csdn.net/lzhlzz/.转载请注明出处,谢谢. D3的全称是(Data-Driven Documents),顾名思义能够知道是一个关于数据驱动的文档的javascript类库.假设你不知道什么是javascript.请先学习javascript的相关知识. 说得简单一点,D3.js主要是用于操作数据的,它通过使用HTML.SVG.CSS来给你的数据注入生命,即转换为各种简…
【 D3.js 入门系列 --- 5.1 】 做一个带坐标轴和标签的图表
前面几节讲解了图标.坐标轴.比例等等,这一节整合这些内容做一个实用的图表.结果图如下: 代码如下所示: <html> <head> <meta charset="utf-8"> <title>Chart</title> </head> <style> .axis path, .axis line{ fill: none; stroke: black; shape-rendering: crispEdge…
【 D3.js 入门系列 --- 5 】 如何添加坐标轴
第3节中做了一个图标,但没有为它添加一个相应的坐标轴,这样不知道每一个柱形到底有多长.这一节做一个坐标轴. D3中的坐标轴都是以 svg 图的形式出现的,这也是为什么在第3节中要使用 svg 的方法做柱形图的原因.第4节里我们讲解了 scale (比例)的用法,在做坐标轴的时候也需要用到比例.第4节中,我们说到scale 是一个函数,这一节中的坐标轴也是一个函数,但是用法却有点不同,要注意. 看下面的代码,我们分别定义数据,scale (比例),坐标轴: var dataset = [ 30 ,…
【 D3.js 入门系列 --- 5 】 怎样加入坐标轴
本人的个人博客为: www.ourd3js.com csdn博客为: blog.csdn.net/lzhlzz 转载请注明出处.谢谢. 第3节中做了一个图标.但没有为它加入一个对应的坐标轴.这样不知道每个柱形究竟有多长.这一节做一个坐标轴. D3中的坐标轴都是以 svg 图的形式出现的,这也是为什么在第3节中要使用 svg 的方法做柱形图的原因. 第4节里我们解说了 scale (比例)的使用方法,在做坐标轴的时候也须要用到比例.第4节中,我们说到scale 是一个函数.这一节中的坐标…
【 D3.js 入门系列 --- 7 】 理解 update, enter, exit 的使用
在前面几节中反复出现了如下代码: svg.selectAll("rect") .data(dataset) .enter() .append("rect") 当所选择的 rect 数量比绑定的数据 dataset 的数量少的时候,通常会用到以上代码,这一节就详细说说当被选择元素和数据数量不一致时该如何处理. 这一节将涉及到三个函数. 1. update() 当对应的元素正好满足时 ( 绑定数据数量 = 对应元素 ) 实际上并不存在这样一个函数,只是为了要与之后…
【 D3.js 入门系列 — 3 】 做一个简单的图表!
图1. 柱形图 1. 柱形图 前几章的例子,都是对文字进行处理.本章中将用 D3 做一个简单的柱形图.制作柱形图有很多种方法,比如用 HTML 的 <div> 标签,或在 SVG 上绘制 . SVG ,即可缩放矢量图形(Scalable Vector Graphics),使用 XML 格式定义图形,可在 W3School 学习 SVG 的相关语法,不需要记住所有标签,用的时候再查即可. 先看下面的代码: <script src="http://d3js.org/d3.v3.mi…
【 D3.js 入门系列 — 2.1 】 选择、插入、删除元素
1. select 和 selectAll 的区别 在 D3 中,选择元素的函数有两个:select 和 selectAll,它们的使用非常重要.先说明一下它们的区别: select 是选择所有指定元素的第一个 selectAll 是选择指定元素的全部(用于同时操作) 这两个函数返回的结果称为选择集. 来看一个具体的例子,现有如下代码: <html> <head> <meta charset="utf-8"> <title>select,…
【 D3.js 入门系列 — 2 】 绑定数据和选择元素
1. 如何绑定数据 D3 有一个很独特的功能:能将数据绑定到 DOM 上,也就是绑定到文档上.这么说可能不好理解,例如网页中有段落元素<p>,我们可以将整数 5 与 <p>绑定到一起. D3 中是通过 data() 和 datum() 函数来绑定数据的,最常用的是 data(). 现有如下 HTML 代码: <p>Hello World 1</p> <p>Hello World 2</p> <p>Hello World 3…
【 D3.js 入门系列 --- 9.1 】 生产饼图
我个人的博客: www.ourd3js.com csdn博客为: blog.csdn.net/lzhlzz 转载请注明出处.谢谢. 这一节用 Layout 做一个饼状图.第9节中说过, Layout 的作用仅仅是转换数据,将不适合图形化的数据转化成适合图形化的数据.如今使用下面数据: var dataset = [ 30 , 10 , 43 , 55 , 13 ]; 这个数据要不能直接用于画饼状图,我们必须通过计算将它转换成角度.这个计算不须要我们手动计算.由于 D3 中提供了 d3.layou…
【 D3.js 入门系列 --- 6 】 如何让图表动起来
[5.1]节中制作了一个比较完善的图表,但它是静态的,想做出它的动态效果吗?在D3中只需要短短的几行代码即可. 这一节将涉及4个函数的使用. 1.transition() 启动转变效果只需要添加这个即可.把它加到两种状态之间,例如: .attr("fill","red") .transition() .attr("fill","steelblue") 如上代码,上下两种属性 fill 的颜色不同,中间添加一行 .transit…
【 D3.js 入门系列 --- 4 】 如何使用scale(比例)
在上一节中使用了一个很重要的概念 — scale (这个不知道翻译成什么,暂且叫它比例).本节将重点介绍它的相关使用方法. 在介绍 scale 之前,先介绍两个经常和 scale 一起出现的函数,在上一节中也出现了. d3.max() d3.min() 它们用于求一个数组中的最大值和最小值,如果是一维数组,使用方法如下: var dataset = [ 30, 20 , 52 , 2 , 11 ]; var result = d3.max( dataset ); 变量 result 中保…
【 D3.js 入门系列 — 4 】 如何使用比例尺( scale )
上一章中使用了一个很重要的概念 — 比例尺( scale ),本节将解说其使用方法. 1. 最大值和最小值 在介绍比例尺( scale )之前,先介绍两个经常和比例尺一起出现的函数,在[第3章]中也出现了. d3.max() d3.min() 这两个函数用于求一个数组中的最大值和最小值,如果是一维数组,使用方法如下: var dataset = [ 30, 20 , 52 , 2 , 11 ]; var result = d3.max( dataset ); 变量 result 中保存的是数组…
【 D3.js 入门系列 --- 8 】 对话操作(事件)
本人的个人博客为: www.ourd3js.com csdn博客为: blog.csdn.net/lzhlzz 转载请注明出处,谢谢. 这一节介绍怎样进行对话的操作,如鼠标单击,鼠标滑过等. 对一个被选择的元素,加入对话操作,代码例如以下: .on("click", function(){ } ) 函数能够是无名函数.也能够是自定义的函数.上面代码监听的是鼠标单击的事件.但鼠标在被选择对象上单击时,就会调用函数 function . 经常使用的事件(event)有: click : …
【 D3.js 入门系列 --- 4 】 怎样使用scale(比例)
本人的个人博客为: www.ourd3js.com csdn博客为: blog.csdn.net/lzhlzz 转载请注明出处,谢谢. 在上一节中使用了一个非常重要的概念 - scale (这个不知道翻译成什么,暂且叫它比例).本节将重点介绍它的相关用法. 在介绍 scale 之前,先介绍两个常常和 scale 一起出现的函数,在上一节中也出现了. d3.max() d3.min() 它们用于求一个数组中的最大值和最小值,假设是一维数组,用法例如以下: var dataset = [ 3…
【 D3.js 入门系列 --- 10.2 】 你可以拖动地图
我的个人博客是:www.ourd3js.com csdn博客为:blog.csdn.net/lzhlzz 转载请注明出处.谢谢. 本节是结合9.2节 和10节 的内容制作的一个可力学导向的中国地图,用户能够拖动中国的各个省份. 数据用的是 10.1节 中简化的中国地图文件: china_simplify.json 1. 定义各函数 var projection = d3.geo.mercator() .center([107, 31]) .scale(850) .translate([width…
【 D3.js 入门系列 --- 9.6 】 生产的包图
我的个人博客是:www.ourd3js.com csdn博客为:blog.csdn.net/lzhlzz 转载请注明出处,谢谢. 打包图( Pack ).用于包括与被包括的关系,也表示各个对象的权重,通经常使用一圆套一圆来表示前者,用圆的大小来表示后者. 先看本节所使用的数据: city2.json 这是各城市所属关系的数据.我们如今要用 D3 的 layout 来转换数据,使其easy进行可视化处理. var pack = d3.layout.pack() .size([ width, he…
【 D3.js 入门系列 --- 9 】 常见可视化图形
本人的个人博客为: www.ourd3js.com csdn博客为: blog.csdn.net/lzhlzz 转载请注明出处,谢谢. Layout ,直译为"布局,安排".但在 D3 中不是这个意思. D3 中有非常多 Layout 函数,它们不是为了在画面中布局什么.在 D3 中是对输入的数据进行转换,转换成比較easy进行可视化的数据.实际进行可视化时,须要其它的代码.我们能够简单地把 Layout 理解为"制作常见图形的函数",比方饼状图等等. D3 中一共…
【 D3.js 入门系列 --- 9.4 】 集群图的制作
本人的个人博客为: www.ourd3js.com csdn博客为: blog.csdn.net/lzhlzz 转载请注明出处,谢谢. 集群图( Cluster )通经常使用于表示包括与被包括关系. 如今我们给出数据.并将其可视化.数据的内容为:中国里包括的部分省份,省份里包括的部分城市. 我们讲数据文件写在一个 JSON 文件里,再用 D3 来读取. JSON(JavaScript Object Notation) 是一种轻量级的数据交换格式.关于它的语法规则.请各位自行查询百度百科等.数据例…
【 D3.js 入门系列 --- 9.3 】 弦图生产
我个人的博客: www.ourd3js.com csdn博客为: blog.csdn.net/lzhlzz 转载请注明出处,谢谢. 弦图( Chord ),主要用于表示两个节点之间的联系.例如以下图: 两点之间的连线表示.谁和谁具有联系: 线的粗细表示权重: watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQvbHpobHp6/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/S…
【 D3.js 入门系列 --- 6 】 如何使移动图表
我的个人博客是: www.ourd3js.com csdn博客为: blog.csdn.net/lzhlzz 转载请注明出处,谢谢. [5.1]节中制作了一个比較完好的图表.但它是静态的.想做出它的动态效果吗?在D3中仅仅须要短短的几行代码就可以. 这一节将涉及4个函数的使用. 1.transition() 启动转变效果仅仅须要加入这个就可以. 把它加到两种状态之间.比如: .attr("fill","red") .transition() .attr("…
【 D3.js 进阶系列 】 进阶总结
进阶系列的文章从去年10月开始写的,晃眼又是4个多月了,想在年前总结一下. 首先恭祝大家新年快乐.今年是羊年吧.前段时间和朋友聊天,聊到十二生肖里为什么没猫,我张口就道:不是因为十二生肖开会的时候猫迟到了吗? 呵呵,不知道这是谁给我灌输的观点.o(>﹏<)o 进阶系列的文章分为两部分,文章前括号里写有: [D3.js 进阶系列] [D3.js 选择集与数据详解] 虽然称之为"进阶",但并不是说一定要看完"入门"才能看.由于本人能力有限,不能很好地整理成由…