index.html(图表页面)
<!doctype html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>D3</title>
<link rel="stylesheet" type="text/css" href="style.css">
</head>
<body>
<div id="container"></div>
</body>
<script src="https://d3js.org/d3.v3.js"></script>
<script src="index.js"></script>
</html>index.js(JS代码)
var data = [0,34.45,45.534,556,76,87,234,234]
pieChart(data,"#container") //D3生成饼状图表
/**
* @desc 饼状图
*/
function pieChart(data, container) {
var width = 500,
height = 400
//添加svg元素,设置宽度和高度
var svg = d3.select(container)
.append("svg")
.attr("width", width)
.attr("height", height)
//在svg下添加g元素
var g = svg.append("g")
.attr("class", "pie-g")
.attr("transform", "translate(200,200)")
//生成d的属性值
var arc_generator = d3.svg.arc()
.innerRadius("0")
.outerRadius("200")
//生成角度数据
var angle_data = d3.layout.pie()
.value(function(d){ return d; })
//设置颜色
var color = d3.scale.category10()
//添加path元素,传入角度数据,设置d属性
g.selectAll("path")
.data(angle_data(data))
.enter()
.append("path")
.attr("d", arc_generator)
.style("fill", function(d,i){ return color(i); })
//添加文字
g.selectAll("text")
.data(angle_data(data))
.enter()
.append("text")
.text(function(d,i){ return i; })
.attr("transform", function(d){ return "translate("+arc_generator.centroid(d)+")"; })
.attr("text-anchor", "middle")
}
使用D3制作统计图表、线性图表、水平柱状图表、饼图 -- (五)饼状图表
原创
©著作权归作者所有:来自51CTO博客作者后端研发Marion的原创作品,请联系作者获取转载授权,否则将追究法律责任
上一篇:Java - 集合框架完全解析
下一篇:jquery插件封装
提问和评论都可以,用心的回复会被更多人看到
评论
发布评论
相关文章
-
python海龟图制作
海龟画图很好看,先上图形: 依据代码注释随意打印出来就行:
ide 背景颜色 python -
Python 用Plotly制作精美的数据分析图
知道函数传入参数,你就能生成这些图
python 公众号 数据 -
python批量制作雷达图
老板要画雷达图,但是数据好多组怎么办?不能一个一个点excel去画吧,那么可以利用python进行批
python radar 雷达图 matplotlib PIL