D3.js v5 Tutorials

D3.js v5 教程

https://github.com/d3/d3/blob/master/API.md

CHANGES

https://github.com/d3/d3/blob/master/CHANGES.md

0xfffff & .toString(16)

16 进制转换


d3-scale

https://github.com/d3/d3-scale#installing

# d3 global is exported

$ npm i -S d3-scale


let x = d3.scaleLinear();

ordinal-scales

https://github.com/d3/d3/blob/master/API.md#ordinal-scales

创建一个序数带尺度

https://github.com/d3/d3-scale/blob/master/README.md#scaleBand

continuous-scales

https://github.com/d3/d3/blob/master/API.md#continuous-scales

创建一个定量线性标度

https://github.com/d3/d3-scale/blob/master/README.md#scaleLinear


// d[0] & d[1]
// d.key & d.value
let Xdatas = data.map(d => d.key),
Ydatas = data.map(d => d.value); let width = 800,
height = 500; // x-Axis 轴 scale range
let x = d3.scaleBand()
.domain(Xdatas)
.rangeRound([0, width])
.padding(0.1); // y-Axis 轴 scale range
let y = d3.scaleLinear()
.domain([0, d3.max(Ydatas)])
.rangeRound([height, 0]); let padding = {
left: 50,
top: 20,
right: 50,
bottom: 50
};

what's new

  1. Promise & Async Await & Fetch AP
  2. ES6 module

https://github.com/d3/d3/releases

https://d3js.org.cn/

https://d3js.org.cn/introduce/

refs

http://www.manongjc.com/article/29914.html

https://blog.csdn.net/qq_34414916/article/details/80032731

https://github.com/mp2930696631/d3.js-demo/blob/master/d3.js-demo/testD3_chp9_1.html

D3.js & v4

big break changes

https://github.com/d3/d3/releases/tag/v4.0.0

D3.js & v3

big break changes

https://github.com/d3/d3/releases/tag/v3.0.0

https://github.com/d3/d3-3.x-api-reference/blob/master/API-Reference.md


viewBox & preserveAspectRatio

layout responsive

https://stackoverflow.com/questions/9400615/whats-the-best-way-to-make-a-d3-js-visualisation-layout-responsive


<svg id="chart" width="960" height="500"
viewBox="0 0 960 500"
preserveAspectRatio="xMidYMid meet">
</svg>

D3.js v5 Tutorials的更多相关文章

  1. D3.js V5 教程

    D3.js V5 教程 1.在项目中使用D3.js 2. 选择元素和设置(获取)属性 3. 绑定数据 4. 理解Update.Enter.Exit 与 添加.删除元素 未完待续..........

  2. d3.js V5版本在vue里使用 自定义节点图片

    var width = this.$refs.topInfo.offsetWidth; var height = this.$refs.topInfo.offsetHeight; var img_w ...

  3. 用 D3.js 画一个手机专利关系图, 看看苹果,三星,微软间的专利纠葛

    前言 本文灵感来源于Mike Bostock 的一个 demo 页面 原 demo 基于 D3.js v3 开发, 笔者将其使用 D3.js v5 进行重写, 并改为使用 ES6 语法. 源码: gi ...

  4. D3.js的v5版本入门教程(第十三章)—— 饼状图

    D3.js的v5版本入门教程(第十三章) 这一章我们来绘制一个简单的饼状图,我们只绘制构成饼状图基本的元素——扇形.文字,从这一章开始,内容可能有点难理解,因为每一章都会引入比较多的难理解知识点,在这 ...

  5. D3.js的v5版本入门教程(第十二章)—— D3.js中各种精美的图形

    D3.js的v5版本入门教程(第十二章) D3中提供了各种制作常见图形的函数,在d3的v3版本中叫布局,通过d3.layout.xxx,来新建,但是到了v5,新建一个d3中基本的图形的方式变了(我也并 ...

  6. D3.js的v5版本入门教程(第十一章)——交互式操作

    D3.js的v5版本入门教程(第十一章) 与图形进行交互操作是很重要的!所谓的交互操作也就是为图形元素添加监听事件,比如说当你鼠标放在某个图形元素上面的时候,就会显示相应的文字,而当鼠标移开后,文字就 ...

  7. D3.js的v5版本入门教程(第九章)——完整的柱状图

    D3.js的v5版本入门教程(第九章) 一个完整的柱状图应该包括的元素有——矩形.文字.坐标轴,现在,我们就来一一绘制它们,这章是前面几章的综合,这一章只有少量新的知识点,它们是 d3.scaleBa ...

  8. D3.js的v5版本入门教程(第八章)—— 坐标轴

    D3.js的v5版本入门教程(第八章) D3中没有现成的坐标轴图形,需要我们自己用其他组件拼凑而成.D3中提供了坐标轴组件,使得我们在SVG中绘制一个坐标轴变得像添加一个普通元素那样简单 为了表绘制一 ...

  9. D3.js的v5版本入门教程(第七章)—— 比例尺的使用

    D3.js的v5版本入门教程(第七章) 比例尺在D3.js中是一个很重要的东西,我们可以这样理解d3.js中的比例尺——一种映射关系,从domain映射到range域(为什么会是domain和rang ...

随机推荐

  1. logstash同步mysql数据到mysql(问题一)

    问题 通过logstash同步数据时 字段类型为tinyint时 通过过去 0变成了false  1变为了true 时间类型 变为 2018-10-16T14:58:02.871Z 分析 开始尝试通过 ...

  2. Ubuntu下修改CMake版本

    https://blog.csdn.net/mdjxy63/article/details/82686504

  3. Python基础(7)——迭代器&生成器

    1.列表生成式 [i*2 for i in range(10)] [fun(i) for i in range(10)] 2.生成器 # Author Qian Chenglong #列表生成器 a= ...

  4. SkylineGlobe 如何二次开发实现天际线分析功能

    天际线效果: 示例代码: <!DOCTYPE html> <html xmlns="http://www.w3.org/1999/xhtml"> <h ...

  5. Emacs 番茄钟 pomidor

    Windows 10 pomidor:https://github.com/TatriX/pomidor alert :https://github.com/jwiegley/alert toaste ...

  6. International Programming Retreat Day(2018.11.17)

    时间:2018.11.17地点:北京国华投资大厦

  7. [Spark][Hive]Hive的命令行客户端启动:

    [Spark][Hive]Hive的命令行客户端启动: [training@localhost Desktop]$ chkconfig | grep hive hive-metastore 0:off ...

  8. 《Head First 设计模式》例子的C++实现(2 观察者模式)

    最近在学习设计模式,用的是 <Head First 设计模式>这本书.感觉这本书写的还是很不错的,深入浅出的介绍了各种常用的设计模式.唯一有点不方便的地方是这本书的例子全都是用的 Java ...

  9. 发布了一个基于jieba分词的ElasticSearch插件

    github地址: https://github.com/hongfuli/elasticsearch-analysis-jieba 基于 jieba 的 elasticsearch 中文分词插件. ...

  10. Python 学习 第八篇:函数2(参数、lamdba和函数属性)

    函数的参数是参数暴露给外部的接口,向函数传递参数,可以控制函数的流程,函数可以0个.1个或多个参数:在Python中向函数传参,使用的是赋值方式. 一,传递参数 参数是通过赋值来传递的,传递参数的特点 ...