index.html
<!DOCTYPE html>
<meta charset="utf-8">
<style>
rect{
fill:#42A5F5;
stroke:black;
}
</style>
<body>
<svg width="960" height="500">
<g id="default" transform="translate(40, 50)"></g>
<g id="custom" transform="translate(520, 50)"></g>
</svg>
<script src="https://d3js.org/d3.v4.min.js"></script>
<script src="//vizjs.org/viz.v1.1.7.min.js"></script>
<script>
var data=[['A', 3, 'x'],['A', 5, 'y'],['B', 2, 'x'],['C', -2, 'x'],['C',-4, 'y'],['D', 3, 'y']];
var bardef = viz.bar().data(data)
.keySecondary(function(d){ return d[2]});
d3.select("#default").call(bardef);
var barcust = viz.bar().data(data)
.keySecondary(function(d){ return d[2]})
.valueSecondary(function(d){ return d.value+'%';});
d3.select("#custom").call(barcust);
</script>