diff --git a/src/traces/ohlc/transform.js b/src/traces/ohlc/transform.js
index f7e0b959818..fe86367558e 100644
--- a/src/traces/ohlc/transform.js
+++ b/src/traces/ohlc/transform.js
@@ -100,18 +100,19 @@ function makeTrace(traceIn, state, direction) {
function makeHoverInfo(traceIn) {
var hoverinfo = traceIn.hoverinfo;
- if(hoverinfo === 'all') return 'x+text';
+ if(hoverinfo === 'all') return 'x+text+name';
var parts = hoverinfo.split('+'),
- hasX = parts.indexOf('x') !== -1,
- hasText = parts.indexOf('text') !== -1;
+ indexOfY = parts.indexOf('y'),
+ indexOfText = parts.indexOf('text');
- if(hasX) {
- if(hasText) return 'x+text';
- else return 'x';
+ if(indexOfY !== -1) {
+ parts.splice(indexOfY, 1);
+ if(indexOfText === -1) parts.push('text');
}
- else return 'text';
+
+ return parts.join('+');
}
exports.calcTransform = function calcTransform(gd, trace, opts) {
diff --git a/test/jasmine/tests/finance_test.js b/test/jasmine/tests/finance_test.js
index d0aa516eade..3cf908235f9 100644
--- a/test/jasmine/tests/finance_test.js
+++ b/test/jasmine/tests/finance_test.js
@@ -390,10 +390,10 @@ describe('finance charts calc transforms:', function() {
var out = _calc([trace0, trace1, trace2, trace3]);
- expect(out[0].hoverinfo).toEqual('x+text');
+ expect(out[0].hoverinfo).toEqual('x+text+name');
expect(out[0].text[0])
.toEqual('Open: 33.01
High: 34.2
Low: 31.7
Close: 34.1
A');
- expect(out[0].hoverinfo).toEqual('x+text');
+ expect(out[0].hoverinfo).toEqual('x+text+name');
expect(out[1].text[0])
.toEqual('Open: 33.31
High: 34.37
Low: 30.75
Close: 31.93
B');