D3学习笔记

<!DOCTYPE html>
<meta charset="utf-8">
<style>
    .axis path, .axis line {
        fill: none;
        stroke: #000;
        shape-rendering: crispEdges;
    }
</style>
<body>
<script src="js/d3.min.js"></script>
<script>
    // 定义数据
    var data = [130,45,355,450,195,400];
    //1、页面插入一个svg
    var svg = d3.select('body')
            .append('svg')
            .attr({
        width:500,
        height:500
        })
        .append('g'); //在svg元素内添加g元素
    //2、定义一个图形 这里用柱形图举例
    var rect = svg.selectAll('rect').data(data).enter().append('rect')
            .attr({
                x:function(d,i){return (500/data.length)*i+10;},//设置图的x
                y:function(d){return 480-d;}, //480=500-20
                width:30,//图宽
                height:function(d,i){return d},//图高
                fill:function(d){
                    if(d>=400){
                        return 'yellow';
                    }
                    if(d<=300){
                        return 'red';
                    }
                    if(d>300 && d<400){
                        return 'green'
                    }
                }//填充颜色设置
            })


    //3、添加轴坐标 用到domain range 定义域 值域
    var x = d3.scale.linear().domain([0,10]).range([5,490]);
    var y = d3.scale.linear().domain([0,d3.max(data,function(d){return d;})]).range([500,5]);
    //3.1 引入x y设置轴位置
    var xAxis = d3.svg.axis().scale(x).orient('bottom');
    var yAxis = d3.svg.axis().scale(y).orient('left');
    //3.2 把轴加入到已定义好的svg 中
    svg.append('g').attr('class','x axis').attr("transform", "translate(0,480)").call(xAxis);
    svg.append('g').attr('class','y axis').attr("transform", "translate(250,0)").call(yAxis);
</script>
  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值