D3.js:坐标轴
来源:互联网 发布:c语言实验报告流程图 编辑:程序博客网 时间:2024/05/21 08:26
坐标轴: 是可视化图表中经常出现的一种图形,由一些列线段和刻度组成。坐标轴在 SVG 中是没有现成的图形元素的,需要用其他的元素组合构成。D3 提供了坐标轴的组件,如此在 SVG 画布中绘制坐标轴变得像添加一个普通元素一样简单。
- 坐标轴的组成
在 SVG 画布的预定义元素里,有六种基本图形:
- 矩形
- 圆形
- 椭圆
- 线段
- 折线
- 多边形
另外,还有一种比较特殊,也是功能最强的元素:
- 路径
画布中的所有图形,都是由以上七种元素组成。显然,这里面没有坐标轴 这种元素。因此,我们需要用其他元素来组合成坐标轴,最终使其变为类似以下的形式:
<g><!-- 第一个刻度 --><g><line></line> <!-- 第一个刻度的直线 --><text></text> <!-- 第一个刻度的文字 --></g><!-- 第二个刻度 --><g><line></line> <!-- 第二个刻度的直线 --><text></text> <!-- 第二个刻度的文字 --></g> ......<!-- 坐标轴的轴线 --><path></path></g>
- 定义坐标轴
// 数据var dataset = [2.5, 2.1, 1.7, 1.3, 0.9];// 定义比例尺var linear = d3.scale.linear() .domain([0, d3.max(dataset)]) .range([0, 250]);var axis = d3.svg.axis() .scale(linear) // 指定比例尺 .orient("bottom") // 指定刻度的方向 .ticks(7); // 指定刻度的数量
- d3.svg.axis():D3 中坐标轴的组件,能够在 SVG 中生成组成坐标轴的元素。
- scale():指定比例尺。
- orient():指定刻度的朝向,bottom 表示在坐标轴的下方显示。
- ticks():指定刻度的数量。
- 在SVG中添加坐标轴
svg.append("g") .call(axis);
- 设定坐标轴的样式和位置
<style>.axis path,.axis line{ fill: none; stroke: black; shape-rendering: crispEdges;}.axis text { font-family: sans-serif; font-size: 11px;}</style>
坐标轴的位置,可以通过 transform 属性来设定。通常在添加元素的时候就一并设定,写成如下形式:
svg.append("g") .attr("class","axis") .attr("transform","translate(20,130)") .call(axis);
页面效果:
阅读全文
0 0
- D3.js:坐标轴
- d3.js-坐标轴
- D3.JS坐标轴的使用
- D3.js SVGAxes(坐标轴)
- 【 D3.js 入门系列 — 5 】 坐标轴
- [D3.js] SVG-Axes(坐标轴)
- d3.js学习5----比例尺和坐标轴
- d3.js在坐标轴遇到的问题
- D3.js制作二维坐标轴基本入门
- d3坐标轴
- D3 坐标轴
- 【D3.js数据可视化系列教程】--(十三)坐标轴
- 【 D3.js 入门系列 --- 5 】 如何添加坐标轴
- d3 坐标轴实现-散点图
- 用d3线段画坐标轴
- 【 D3.js 入门系列 --- 5.1 】 做一个带坐标轴和标签的图表
- 用D3.js进行医疗数据可视化 (三)坐标轴 (Axes)
- D3.js初体验 —— 线型图表与坐标轴的绘制
- 走向三年Java
- pytube——下载YouTube视频的python库
- tensorflow实现对tensor中各个元素求逻辑‘与’
- ajax详解
- java rmi connection refused
- D3.js:坐标轴
- java后端书架
- eclipse Neon.3 Release (4.6.3)中maven项目使用阿里云镜像
- Java IO流分析整理
- java web 项目向手机发送短信
- C++ 中 ZeroMemory、memset 危险需慎用
- HTML中属性ID和属性NAME有何区别
- 用Jquery动态获取当地时间
- 防止iframe调用