我正在使用angularjs-nvd3指令。
我需要根据它们的值为单个条形图上色。我可以使用angularjs-nvd3-directives通过使用一个回调来执行此操作,该回调选择条形并在渲染后对其进行着色。
<nvd3-multi-bar-chart
data="vm.chartData"
id="chartOne"
width="400"
height="550"
showXAxis="true"
showYAxis="true"
noData="Charts not available"
delay="2400"
yAxisTickFormat="vm.yAxisTickFormatFunction()"
forcey="[0,9]"
callback="vm.colorFunction()"
objectequality="true">
<svg></svg>
</nvd3-multi-bar-chart>
我在回调函数中的选择器如下所示:
d3.selectAll("rect.nv-bar")
.style("fill", function(d, i){
return d.y > 50 ? "red":"blue";
});
总的来说,使用angularjs-nvd3-directives一直很好,并且节省了一些时间,但是在渲染后使用选择器来自定义图表看起来像很多工作(颜色单独的条,颜色x / y轴等等。 )。
手头的问题是,当调整窗口大小时,它会恢复为原来的蓝色。有没有办法保留我对酒吧的更新?我是否需要为window.onresize编写自己的事件(我已经尝试过并且似乎不起作用)?
答案 0 :(得分:0)
尽管我不想,我最终为我的图表编写了自己的指令,现在我可以完全控制图表而无需编写大量代码来撤消angularjs-nvd3指令在回调中做了。