Skip to content

Commit f89aa06

Browse files
committed
Ignore invalid log scale min and max
1 parent 55128f7 commit f89aa06

File tree

2 files changed

+36
-4
lines changed

2 files changed

+36
-4
lines changed

src/scales/scale.logarithmic.js

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -174,8 +174,8 @@ module.exports = Scale.extend({
174174
var DEFAULT_MIN = 1;
175175
var DEFAULT_MAX = 10;
176176

177-
me.min = valueOrDefault(tickOpts.min, me.min);
178-
me.max = valueOrDefault(tickOpts.max, me.max);
177+
me.min = tickOpts.min >= 0 ? tickOpts.min : me.min;
178+
me.max = tickOpts.max >= 0 ? tickOpts.max : me.max;
179179

180180
if (me.min === me.max) {
181181
if (me.min !== 0 && me.min !== null) {
@@ -211,8 +211,8 @@ module.exports = Scale.extend({
211211
var reverse = !me.isHorizontal();
212212

213213
var generationOptions = {
214-
min: tickOpts.min,
215-
max: tickOpts.max
214+
min: tickOpts.min >= 0 ? tickOpts.min : undefined,
215+
max: tickOpts.max >= 0 ? tickOpts.max : undefined
216216
};
217217
var ticks = me.ticks = generateTicks(generationOptions, me);
218218

test/specs/scale.logarithmic.tests.js

Lines changed: 32 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -477,6 +477,38 @@ describe('Logarithmic Scale tests', function() {
477477
expect(yScale.ticks[tickCount - 1]).toBe(10);
478478
});
479479

480+
it('should ignore invalid min and max options', function() {
481+
var chart = window.acquireChart({
482+
type: 'bar',
483+
data: {
484+
datasets: [{
485+
data: [1, 1, 1, 2, 1, 0]
486+
}],
487+
labels: []
488+
},
489+
options: {
490+
scales: {
491+
yAxes: [{
492+
id: 'yScale',
493+
type: 'logarithmic',
494+
ticks: {
495+
min: -10,
496+
max: -1010,
497+
callback: function(value) {
498+
return value;
499+
}
500+
}
501+
}]
502+
}
503+
}
504+
});
505+
506+
var yScale = chart.scales.yScale;
507+
var tickCount = yScale.ticks.length;
508+
expect(yScale.min).toBe(0);
509+
expect(yScale.max).toBe(2);
510+
});
511+
480512
it('should generate tick marks', function() {
481513
var chart = window.acquireChart({
482514
type: 'bar',

0 commit comments

Comments
 (0)