🔥码云GVP开源项目 12k star Uniapp+ElementUI 功能强大 支持多语言、二开方便! 广告
`审查人:李伟` `被审核代码负责人:张红桥` `代码地址:http://192.168.1.170/hyfe/hycharts/blob/master/app/charts/barCharts1.js` ### 存在问题 1.未使用关键字定义变量width ~~~ // 多个方法的公用配置 -- 无width var itemStyle var height var grid var linear // 获取通用配置项 -- line148 width = config.width height = config.height grid = config.grid itemStyle = config.itemStyle ~~~ 2.代码语句中出现多余引号,**建议去除**: ~~~ //line -- 210 $('' + id + ' .axis-x').find('.tick text').eq(i).text(name) ~~~ 3.比例尺domain()设置不合理,应将定义域最大值设置为**大于数据最大值**,这样避免绘制出来的图形高度超过y轴最大值: ![](https://box.kancloud.cn/4b97ddd713926d534837a59664bfcaca_678x375.jpg) 源代码: ~~~ // 比例尺 linear = d3.scale.linear() .domain([0, d3.max(dataset)]) .range([0, height - grid.y - grid.y2]) ~~~ 建议更改: ~~~ // 比例尺 linear = d3.scale.linear() .domain([0, d3.max(dataset) * 1.2]) .range([0, height - grid.y - grid.y2]) ~~~ ### 优化建议 1.数据中value值已经是Number类型了,此处没必要再进行数据类型转换: ~~~ defaultDataSource: function() { return [ { name: "江北区", value: 1140 //已经是Number类型了 } ] }, // 处理数据 for(var i = 0; i < data.length; i++) { dataset.push(parseInt(data[i].value, 10)) //没必要再进行数据类型转换 var name = data[i].name xData.push(name) } ~~~ 2.