面积生成器

Posted 禅楼望月

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了面积生成器相关的知识,希望对你有一定的参考价值。

面积生成器--d3.area(),返回的函数用于生成不封闭的曲线路径字符串(path标签的d属性值)。它有两种,一种为随着x轴的伸展而变化(需要定义x,y0,y1访问器),另一种为随着y轴的伸展而变化(需要定义x0,x1,y访问器)。拿第一种来说,x可以理解为x轴的取值,y0可以理解为图形是基于那条线的,即:基线,y1可以理解为图形的另一条线,即:顶线。其实,整个面积图形是被包裹在y=y0和y=y1两条线之间的。注意,这两条线也可以是曲线。而第二条也就是整个面积图形是被包裹在x=x0和x=x1两条线之间的。

数据格式

数据值应包括自增的x或y,及基线和顶线。如,第一种情况下我们让基线固定,顶线变化便可以用如下的数据格式
  1. var data = [
  2. {x: 100, y: 100}, {x: 150, y: 150}, {x: 200, y: 100},
  3. {x: 250, y: 150}, {x: 300, y: 100}, {x: 350, y: 150}
  4. ];
有时候也需要让基线不是固定的:
  1. var data = [
  2. {x: 100, y1: 100, y0: 150}, {x: 150, y1: 150, y0: 200}, {x: 200, y1: 100, y0: 150},
  3. {x: 250, y1: 150, y0: 200}, {x: 300, y1: 100, y0: 150}, {x: 350, y1: 150, y0: 200}
  4. ];

构造器

第一种形式的构造器,第二种形式一样,只是访问器函数不一样。
  1. var area = d3.area()
  2. .x(function (d) {return d.x;})
  3. .y0(function (d) {return d.y0;})
  4. .y1(function(d){return d.y1;});
同样我们还可以使用curve使得边线有各种变形。

以上是关于面积生成器的主要内容,如果未能解决你的问题,请参考以下文章

Apollo Codegen 没有找到生成代码的操作或片段

前端开发工具vscode如何快速生成代码片段

前端开发工具vscode如何快速生成代码片段

vscode代码片段生成vue模板

VS Code配置snippets代码片段快速生成html模板,提高前端编写效率

径向面积生成器