diff --git a/src/traces/bar/calc.js b/src/traces/bar/calc.js index 40389a6d514..74a6804ff57 100644 --- a/src/traces/bar/calc.js +++ b/src/traces/bar/calc.js @@ -48,12 +48,16 @@ module.exports = function calc(gd, trace) { } // create the "calculated data" to plot - var serieslen = Math.min(pos.length, size.length), - cd = new Array(serieslen); + var serieslen = Math.min(pos.length, size.length); + var cd = new Array(serieslen); // set position and size for(i = 0; i < serieslen; i++) { cd[i] = { p: pos[i], s: size[i] }; + + if(trace.ids) { + cd[i].id = String(trace.ids[i]); + } } // set base diff --git a/test/image/baselines/error_bar_bar_ids.png b/test/image/baselines/error_bar_bar_ids.png new file mode 100644 index 00000000000..1ca6a60d491 Binary files /dev/null and b/test/image/baselines/error_bar_bar_ids.png differ diff --git a/test/image/mocks/error_bar_bar_ids.json b/test/image/mocks/error_bar_bar_ids.json new file mode 100644 index 00000000000..268d77e5c05 --- /dev/null +++ b/test/image/mocks/error_bar_bar_ids.json @@ -0,0 +1,20 @@ +{ + "data": [{ + "type":"bar", + "x": ["A", "B", "C"], + "y": [0, "2.12", "2.32"], + "ids": ["A", "B", "C"], + "name": "Sample", + "marker": { + "color": "#FFFFCC", + "line":{ + "color": "rgba(0,0,0,0.4)", + "width": 1.5 + } + }, + "error_y": { + "array": ["1.32", "1.43", "1.58"], + "arrayminus": ["1.31", "1.44", "1.57"] + } + }] +}