D3.js轴刻度条件格式
D3.js axis tick conditional formatting
我正在尝试使轴上的记号具有条件格式。例如,如果它们是正数,我希望它们是绿色的;如果它们是负数,则希望它们是红色的。
var bonus_penalties = [ -1,-13,-5,0,5,10,15];
var bpAxisScale = d3.scale.linear()
.domain([0,6])
.range([bottom- 45, 45]);
var bpAxis = d3.svg.axis()
.scale(bpAxisScale)
.orient('right')
.tickFormat(function(d) { return bonus_penalties[d]});
var bp_axis = d3.select("#experienceView").append('svg:g')
.attr("transform", "translate(160,0)")
.attr('class', 'bp')
.call(bpAxis)
.style('fill', function(d) {
if(bonus_penalties[d] < 0){
return 'red';
} else {
return 'green';
}
});
bp_axis.selectAll("text")
.style('fill', function(d) {
if(bonus_penalties[d].key == 0){
return 'black';
} else if(bonus_penalties[d].key < 0){
return 'red';
} else {
return 'green';
}
})
.attr('font-size',"10px")
.style("text-anchor", "middle");
您可以翻译成现代Javascript语法,但需要注意的是,使用条件链和所有可读格式:
bp_axis.selectAll("text")
.style('fill', d =>
(bonus_penalties[d].key < 0)? 'red'
: bonus_penalties[d].key? 'green'
: 'black'
)
.attr('font-size',"10px")
.style("text-anchor", "middle");
相关文章:
- Google Sheets自定义函数条件格式
- D3.js轴刻度条件格式
- Google Apps 脚本,用于根据一个单元格的值对另一个单元格进行条件颜色格式设置
- 带rhandontable的数字和条件格式
- 如何在不强制的情况下添加条件文本?[101,pdf格式]
- 在ng repeat中按条件设置格式/样式
- 当数据超过 5k 时,为动手提供条件格式的最佳方法
- HTML 表的条件格式因列而异
- 获取条件json格式的表单数据
- moment.js中有条件格式吗
- json格式的jison启动条件
- Jquery UI对话框条件格式
- 条件格式数据表DT R
- Jqgrid条件格式
- 使用google脚本操作数据条件格式和数据验证
- HandsonTable条件格式
- Javascript中的HTML表条件格式代码没有按计划工作
- JavaScript: document.createtextnode中的条件格式
- 关于Handsontable条件格式
- SuiteCRM listview条件格式