javascript - change - ¿Cómo configurar el título del eje Y de ChartJS?
position legend chartjs (6)
Considere usar un estilo the transform: rotate (-90deg) en un elemento. Ver http://www.w3schools.com/cssref/css3_pr_transform.asp
Ejemplo, en tu css
.verticaltext_content {
position: relative;
transform: rotate(-90deg);
right:90px; //These three positions need adjusting
bottom:150px; //based on your actual chart size
width:200px;
}
Agregue un factor de falsificación de espacio a la escala del eje Y para que el texto tenga espacio para representar en su JavaScript.
scaleLabel: " <%=value%>"
Luego, en su html después de su lienzo gráfico, coloque algo como ...
<div class="text-center verticaltext_content">Y Axis Label</div>
No es la solución más elegante, pero funcionó bien cuando tenía algunas capas entre el código html y el gráfico (usando angular-chart y no queriendo cambiar ningún código fuente).
Estoy usando Chartjs para mostrar diagramas y necesito establecer el título del eje y, pero no hay información al respecto en la documentación.
Necesito establecer el eje y como en la imagen, o encima del eje y para que alguien pueda saber cuál es ese parámetro
He buscado en el sitio web oficial pero no había información al respecto
En Chart.js versión 2.0 esto es posible:
options = {
scales: {
yAxes: [{
scaleLabel: {
display: true,
labelString: ''probability''
}
}]
}
}
Consulte la documentación de etiquetado de ejes para obtener más detalles.
Para Chart.js 2.x, consulte la respuesta de andyhasit: https://.com/a/36954319/360067
Para Chart.js 1.x, puede ajustar las opciones y extender el tipo de gráfico para hacer esto, así
Chart.types.Line.extend({
name: "LineAlt",
draw: function () {
Chart.types.Line.prototype.draw.apply(this, arguments);
var ctx = this.chart.ctx;
ctx.save();
// text alignment and color
ctx.textAlign = "center";
ctx.textBaseline = "bottom";
ctx.fillStyle = this.options.scaleFontColor;
// position
var x = this.scale.xScalePaddingLeft * 0.4;
var y = this.chart.height / 2;
// change origin
ctx.translate(x, y);
// rotate text
ctx.rotate(-90 * Math.PI / 180);
ctx.fillText(this.datasets[0].label, 0, 0);
ctx.restore();
}
});
llamándolo así
var ctx = document.getElementById("myChart").getContext("2d");
var myLineChart = new Chart(ctx).LineAlt(data, {
// make enough space on the right side of the graph
scaleLabel: " <%=value%>"
});
Observe el espacio que precede al valor de la etiqueta, esto nos da espacio para escribir la etiqueta del eje y sin perder el tiempo con demasiados elementos internos de Chart.js
Fiddle - http://jsfiddle.net/wyox23ga/
Para los ejes x e y:
options : {
scales: {
yAxes: [{
scaleLabel: {
display: true,
labelString: ''probability''
}
}],
xAxes: [{
scaleLabel: {
display: true,
labelString: ''hola''
}
}],
}
}
Para mí funciona así:
options : {
scales: {
yAxes: [{
scaleLabel: {
display: true,
labelString: ''probability''
}
}]
}
}
chart.js admite esto por defecto verifique el enlace. chartjs
puede establecer la etiqueta en el atributo de opciones.
El objeto de opciones se ve así.
options = {
scales: {
yAxes: [
{
id: ''y-axis-1'',
display: true,
position: ''left'',
ticks: {
callback: function(value, index, values) {
return value + "%";
}
},
scaleLabel:{
display: true,
labelString: ''Average Personal Income'',
fontColor: "#546372"
}
}
]
}
};