d3.js实现创建完整柱形图的代码介绍


当前第2页 返回上一页

对于barScaleyAxisScale,输入域相反,所以映射相反,把一篇他人很棒的总结放于文末

创建柱状图

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

let barContainer = d3.select('.chart')

    .attr('width', data.length * barWidth + padding.left + padding.right)

    .attr('height', barHeight + padding.top + padding.bottom)

    .selectAll('g')

    .data(data).enter().append('g')

    .attr('transform', (d, i) => {

        return 'translate(' + (padding.left + i * barWidth) + ',' + (padding.top + barHeight - barScale(d)) + ')'

    });

barContainer.append('rect')

    .attr('height', d => barScale(d))

    .attr('width', barWidth - 1);

barContainer

    .append('text')

    .text(d => d)

    .attr('y', 10)

    .attr('x', barWidth / 2 - 5);

这里使用了之前定义的padding对象的值进行部分留白

创建坐标轴

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

/**

 * 创造y轴

 */

let yAxis = d3.axisLeft(yAxisScale);

d3.select('.chart')

    .append('g')

    .attr('transform', 'translate(' + (padding.left - 10) + ',' + padding.top + ') ')

    .call(yAxis);

/**

 * 创建X轴

 */

let xAxis = d3.axisBottom(xAxisScale);

d3.select('.chart')

    .append('g')

    .attr('transform', 'translate(' + (padding.left) + ',' + (padding.top + barHeight) + ')')

    .call(xAxis);

最后创建坐标轴

3156082366-5ca5a5341d4c3_articlex.png

【相关推荐:JavaScript视频教程】

以上就是d3.js实现创建完整柱形图的代码介绍的详细内容,更多文章请关注木庄网络博客

返回前面的内容

相关阅读 >>

json是javascript子集么

innerhtml和innertext有哪些差异?两者的简单比较

编写一个javascript程序来列出javascript对象的属性

js要怎么学

javascript怎么清除标签的浮动

js怎么替换字符串?

js保留两位小数的函数有哪些

资源合并与压缩的优化方法介绍

jquery获取父窗口的元素

javascript void0怎么解决

更多相关阅读请进入《d3.js》频道 >>




打赏

取消

感谢您的支持,我会继续努力的!

扫码支持
扫码打赏,您说多少就多少

打开支付宝扫一扫,即可进行扫码打赏哦

分享从这里开始,精彩与您同在

评论

管理员已关闭评论功能...