d3.js读书笔记-2

这篇博客详细介绍了d3.js中的比例尺概念,包括基本内容和扩展类型。接着,作者探讨了如何设置和优化数轴,以及如何利用这些比例尺和数轴创建一个简单的散点图,对于数据可视化的实践非常有帮助。
摘要由CSDN通过智能技术生成

 比例尺

比例尺基本内容

比例尺是一组把输入域映射为输出范围的函数。任意数据集中的值不可能恰好与图表中的像素尺度一一对应。比例尺就是把这些数据值映射为可视化图形中使用的新值的便捷手段。D3的比例尺就是那些你定义的带有参数的函数。定义好之后,就可以调用这些比例尺函数,传入值,它们就能返回按比例生成的输出值。
比例尺的输入值域(input domain)指可能的输入值的范围。
比例尺的输出范围(output range)指输出值可能的范围,一般以用于显示的像素为 单位。
其实比例尺就是归一化的概念。
D3有一个比例尺函数生成器,通过d3.scale来访问。要生成一个比例尺,在d3.scale后面加上要创建的比例尺类型即可。
var scale = d3.scale.linear();
设置比例尺的值域需要调用domain()方法,并将值域以数组形式传给它。假设值域是100到500,那么就可以这样写代码: 
scale.domain([100, 500]);   
设定输出范围的方式类似,但要调用range()方法:
scale.range([10, 350]);
如果不想给值域设置固定的值,那可以使用两个方便的数组函数:d3.min()和 d3.max(),让它们帮你动态分析数据集。
vardataset = [
[5, 20], [480, 90], [250, 50], [100, 33], [330, 95],
[410, 12], [475, 44], [25, 67], [85, 21], [220, 88]
];
d3.max(dataset, function(d) {
return d[0];
});
这个存取器函数是一个匿名函数,max()会把数组中的每个元素(即这里的d)交给它。存取器函数的目的是指定比较哪个值。对我们的数据集而言,需要比较x值, 也就是嵌套数组的第一个值,位置为0。把我们刚刚介绍的知识综合起来,就可以创建一个动态映射x轴值的比例尺函数: <
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值