Диаграмма js: повернуть заголовок оси - PullRequest
0 голосов
/ 12 апреля 2020

У меня есть диаграмма с двумя осями у, и я хотел бы дать им обоим название, которое просто отлично работает. Но заголовок оси Y справа повернут на 180 °. Я хотел бы отменить это, но не могу найти информацию о том, как это сделать, в документации.

minRotation и maxRotation не работают.

Chartjs Chart with 2 y-axis Кто-то сейчас, если можно ли повернуть название оси?

1 Ответ

1 голос
/ 12 апреля 2020

Вы можете сделать это только одним способом. И это то, что вы меняете диаграмму. js библиотека.

вы должны найти эту часть, которая начинается с

if (scaleLabel.display) { в диаграмме. js и поставить

var isRight = options.position === 'right';
rotation = isRight ? -0.5 * Math.PI : rotation;

как показано ниже

            if (scaleLabel.display) {
                // Draw the scale label
                var scaleLabelX;
                var scaleLabelY;
                var rotation = 0;

                if (isHorizontal) {
                    scaleLabelX = me.left + ((me.right - me.left) / 2); // midpoint of the width
                    scaleLabelY = options.position === 'bottom' ? me.bottom - (scaleLabelFontSize / 2) : me.top + (scaleLabelFontSize / 2);
                } else {
                    var isLeft = options.position === 'left';
                    scaleLabelX = isLeft ? me.left + (scaleLabelFontSize / 2) : me.right - (scaleLabelFontSize / 2);
                    scaleLabelY = me.top + ((me.bottom - me.top) / 2);
                    rotation = isLeft ? -0.5 * Math.PI : 0.5 * Math.PI;
                    var isRight = options.position === 'right';
                    rotation = isRight ? -0.5 * Math.PI : rotation;
                }

                context.save();
                context.translate(scaleLabelX, scaleLabelY);
                context.rotate(rotation);
                context.textAlign = 'center';
                context.textBaseline = 'middle';
                context.fillStyle = scaleLabelFontColor; // render in correct colour
                context.font = scaleLabelFont;
                context.fillText(scaleLabel.labelString, 0, 0);
                context.restore();
            }

как конечный результат enter image description here

...