美文网首页
d3基础知识

d3基础知识

作者: 戊戌水瓶 | 来源:发表于2022-10-08 14:13 被阅读0次

h5:

<svg  style="background-color: #fff;" id="data_area" height="300" width="450"></svg>

Angular ts文件:

import * as d3 from 'd3';

  ngOnInit(): void {

    // this.setD3Circle();

    this.setMargin();

  }

  setD3Circle() {

    var svg = d3.select('#data_area')

      .append("g") // 添加标尺

      .attr("transform", "translate(30, 30)"); // 平移图像

    var x = d3.scaleLinear()

      .domain([0, 100])

      .range([0, 400]);

    var y = d3.scaleLinear()

      .domain([100, 0])

      .range([200, 0]);

    svg.append('g').attr("transform", "translate(0," + 200 + ")").call(d3.axisBottom(x));

    svg.append('g').call(d3.axisLeft(y));

    // 以百分比设置图片尺寸

    svg.append("circle")

        .attr("cx", x(10)).attr("cy", 100).attr("r", 40).style("fill", "blue");

    svg.append("circle")

        .attr("cx", x(50)).attr("cy", 100).attr("r", 40).style("fill", "red");

    svg.append("circle")

        .attr("cx", x(100)).attr("cy", 100).attr("r", 40).style("fill", "green");

    // svg.append('circle').attr('cx', 3).attr('cy', 3).attr('r', 40).style('fill', 'blue');

    // svg.append('circle').attr('cx', 120).attr('cy', 70).attr('r', 40).style('fill', 'red');

    // svg.append('circle').attr('cx', 300).attr('cy', 100).attr('r', 40).style('fill', 'green');

  }

运行结果如下图所示:

  setMargin(){

    // 设置图形的尺寸和边距

    var margin = { top: 10, right: 40, bottom: 30, left: 30 },

    width = 450 - margin.left - margin.right,

    height = 300 - margin.top - margin.bottom;

    // 将svg对象附加到页面主体

    var svg = d3.select("#data_area")

      .append("g") // 添加标尺

      .attr("transform", "translate(" + margin.left + "," + margin.top + ")"); // 平移图像

    var data = [{ x: 10, y: 20 }, { x: 40, y: 90 }, { x: 80, y: 50 }]

    // 创建x轴比例尺

    var x = d3.scaleLinear()

      .domain([0, 100])

      .range([0, width]);

    svg.append('g')

      .attr("transform", "translate(0," + height + ")")

      .call(d3.axisBottom(x));

    // 创建y轴比例尺

    var y = d3.scaleLinear()

      .domain([0, 100])

      .range([height, 0]);

    svg.append('g')

      .call(d3.axisLeft(y));

    svg.selectAll("whatever")

      .data(data)

      .enter()

      .append("circle")

      .attr("cx", function (d) { return x(d.x) })

      .attr("cy", function (d) { return y(d.y) })

      .attr("r", 5)

  }

运行结果如下图所示:

相关文章

  • D3学习系列(三) 桑基图

    D3学习系列 D3学习系列(一) 基础知识与柱形图绘制D3学习系列(二) 弦图绘制 「前言」 网上关于桑基图的例子...

  • d3基础知识

    h5: Angular ts文件:import * as d3 from 'd3'; ngOnInit(): ...

  • D3究竟是什么?

    学习D3并不容易,需要比较多的基础知识,像JS、HTML、SVG等都必需要掌握的,同时还需要有不错的逻辑思考能力。...

  • D3.js基础篇

    本教程是一个简单的入门教程,能够帮助初学者快速掌握D3的基础知识。 本节内容介绍了添加元素、绑定数据、使用数据、矢...

  • d3.js

    D3是什么? D3: 是Data-Driven Documents(数据驱动文档)的简称。 D3(或D3.js) ...

  • Vue D3 力导向图

    1. 安装 前端工程根目录下执行 yarn add d3 ,安装 d3 依赖包。安装的版本 "d3": "^5...

  • Explore D3

    d3 v5 Tech Stack ? Node Webpack D3 Installation ? Compile...

  • 2018-09-14_D3.js

    Data Visualization with D3 D3: SVG中的jQurey 1. Add Documen...

  • 2019-03-30计算机二级

    '=VLOOKUP(D3,编号对照!$A$2:$C$19,2,FALSE) '=VLOOKUP(D3,编号对照!$...

  • 王昊阳找的资料

    一. 可视化项目工具 1. d3 D3 is a JavaScript data visualization li...

网友评论

      本文标题:d3基础知识

      本文链接:https://www.haomeiwen.com/subject/gytwartx.html