mirror of
https://github.com/chartjs/Chart.js.git
synced 2024-10-06 04:09:08 +02:00
Apply maxTicksLimit to grid when ticks are hidden (#9277)
This commit is contained in:
parent
4002694e26
commit
a8d083ac24
@ -1,6 +1,6 @@
|
|||||||
import Element from './core.element';
|
import Element from './core.element';
|
||||||
import {_alignPixel, _measureText, renderText, clipArea, unclipArea} from '../helpers/helpers.canvas';
|
import {_alignPixel, _measureText, renderText, clipArea, unclipArea} from '../helpers/helpers.canvas';
|
||||||
import {callback as call, each, finiteOrDefault, isArray, isFinite, isNullOrUndef, isObject} from '../helpers/helpers.core';
|
import {callback as call, each, finiteOrDefault, isArray, isFinite, isNullOrUndef, isObject, valueOrDefault} from '../helpers/helpers.core';
|
||||||
import {toDegrees, toRadians, _int16Range, _limitValue, HALF_PI} from '../helpers/helpers.math';
|
import {toDegrees, toRadians, _int16Range, _limitValue, HALF_PI} from '../helpers/helpers.math';
|
||||||
import {_alignStartEnd, _toLeftRightCenter} from '../helpers/helpers.extras';
|
import {_alignStartEnd, _toLeftRightCenter} from '../helpers/helpers.extras';
|
||||||
import {toFont, toPadding, _addGrace} from '../helpers/helpers.options';
|
import {toFont, toPadding, _addGrace} from '../helpers/helpers.options';
|
||||||
@ -1072,7 +1072,9 @@ export default class Scale extends Element {
|
|||||||
x2 = chartArea.right;
|
x2 = chartArea.right;
|
||||||
}
|
}
|
||||||
|
|
||||||
for (i = 0; i < ticksLength; ++i) {
|
const limit = valueOrDefault(options.ticks.maxTicksLimit, ticksLength);
|
||||||
|
const step = Math.max(1, Math.ceil(ticksLength / limit));
|
||||||
|
for (i = 0; i < ticksLength; i += step) {
|
||||||
const optsAtIndex = grid.setContext(me.getContext(i));
|
const optsAtIndex = grid.setContext(me.getContext(i));
|
||||||
|
|
||||||
const lineWidth = optsAtIndex.lineWidth;
|
const lineWidth = optsAtIndex.lineWidth;
|
||||||
|
37
test/fixtures/scale.category/max-ticks-limit-a.js
vendored
Normal file
37
test/fixtures/scale.category/max-ticks-limit-a.js
vendored
Normal file
@ -0,0 +1,37 @@
|
|||||||
|
const data = Array.from({length: 42}, (_, i) => i + 1);
|
||||||
|
const labels = data.map(v => 'tick' + v);
|
||||||
|
|
||||||
|
module.exports = {
|
||||||
|
description: 'https://github.com/chartjs/Chart.js/issues/7302',
|
||||||
|
config: {
|
||||||
|
type: 'bar',
|
||||||
|
data: {
|
||||||
|
datasets: [{
|
||||||
|
data
|
||||||
|
}],
|
||||||
|
labels
|
||||||
|
},
|
||||||
|
options: {
|
||||||
|
scales: {
|
||||||
|
x: {
|
||||||
|
ticks: {
|
||||||
|
display: false,
|
||||||
|
maxTicksLimit: 7
|
||||||
|
},
|
||||||
|
grid: {
|
||||||
|
color: 'red'
|
||||||
|
}
|
||||||
|
},
|
||||||
|
y: {display: false}
|
||||||
|
},
|
||||||
|
layout: {
|
||||||
|
padding: {
|
||||||
|
right: 2
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
},
|
||||||
|
options: {
|
||||||
|
spriteText: true
|
||||||
|
}
|
||||||
|
};
|
BIN
test/fixtures/scale.category/max-ticks-limit-a.png
vendored
Normal file
BIN
test/fixtures/scale.category/max-ticks-limit-a.png
vendored
Normal file
Binary file not shown.
After Width: | Height: | Size: 13 KiB |
37
test/fixtures/scale.category/max-ticks-limit-b.js
vendored
Normal file
37
test/fixtures/scale.category/max-ticks-limit-b.js
vendored
Normal file
@ -0,0 +1,37 @@
|
|||||||
|
const data = Array.from({length: 42}, (_, i) => i + 1);
|
||||||
|
const labels = data.map(v => 'tick' + v);
|
||||||
|
|
||||||
|
module.exports = {
|
||||||
|
description: 'https://github.com/chartjs/Chart.js/issues/7302',
|
||||||
|
config: {
|
||||||
|
type: 'bar',
|
||||||
|
data: {
|
||||||
|
datasets: [{
|
||||||
|
data
|
||||||
|
}],
|
||||||
|
labels
|
||||||
|
},
|
||||||
|
options: {
|
||||||
|
scales: {
|
||||||
|
x: {
|
||||||
|
ticks: {
|
||||||
|
display: false,
|
||||||
|
maxTicksLimit: 6
|
||||||
|
},
|
||||||
|
grid: {
|
||||||
|
color: 'red'
|
||||||
|
}
|
||||||
|
},
|
||||||
|
y: {display: false}
|
||||||
|
},
|
||||||
|
layout: {
|
||||||
|
padding: {
|
||||||
|
right: 2
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
},
|
||||||
|
options: {
|
||||||
|
spriteText: true
|
||||||
|
}
|
||||||
|
};
|
BIN
test/fixtures/scale.category/max-ticks-limit-b.png
vendored
Normal file
BIN
test/fixtures/scale.category/max-ticks-limit-b.png
vendored
Normal file
Binary file not shown.
After Width: | Height: | Size: 14 KiB |
Loading…
Reference in New Issue
Block a user