¿Alguien sabe cómo se puede establecer la etiqueta o el título de un eje en Flot?Etiqueta de eje en Flot
He leído la API pero no parecen tener esa característica ...
Gracias :)
¿Alguien sabe cómo se puede establecer la etiqueta o el título de un eje en Flot?Etiqueta de eje en Flot
He leído la API pero no parecen tener esa característica ...
Gracias :)
No hay ninguno integrado en Flot.
Lo mejor que puedes hacer es hacerlo tú mismo a través de divs posicionados, pero si eres aventurero, puedes mirar el issue (o el original issue) y ver cómo otras personas lo han solucionado.
En concreto, hay dos personas que recientemente han hecho las revisiones relacionadas con la etiqueta-a FLOT:
https://github.com/RuiPereira/flot/raw/axislabels/jquery.flot.axislabels.js
jqPlot tiene soporte para esto, en caso que usted es capaz de utilizar una alternativa
+1 para jqplot. Es asombroso. –
Una posible desventaja, si le importa a alguien, es que Flot todavía es compatible con IE6, mientras que jqPlot lo ha descartado. – Cheekysoft
Lo que también habla por Flot es la mejor manera de panoramizar y hacer zoom. [Este] (http://www.flotcharts.org/flot/examples/navigate/index.html) es mucho más intuitivo que [que] (http://www.jqplot.com/tests/zooming.php). – Axel
estoy usando este workarou nd:
yaxis: {
tickFormatter: function(val, axis) { return val < axis.max ? val.toFixed(2) : "CZK/l";}
}
Muy simple, el valor máximo en el eje Y se reemplaza por una cadena personalizada. No he probado en el eje X, pero no veo ninguna razón por la que no debería funcionar.
Gracias por el código, +1 – abhijit
¡Muy listo! Me gusta. – Cheezmeister
lamentablemente no se ve en la mía ya que Flot decidió ocultar la última (máxima) marca del gráfico – Dennis
Autoadhesivo shameless: he reparado y ampliado mucho el plugin flot-axislabels de xuanluo: http://github.com/markrcote/flot-axislabels/ Por lo que sé, es la mejor solución para etiquetas de ejes en este momento.
esto funcionó para mí woo hoo. Creo que esta puede ser la respuesta aceptada – Dennis
Debe ser la respuesta aceptada. La integración fue sencilla –
Una sugerencia que vi que funciona bastante bien es poner el gráfico en el medio de una tabla de 3x3. Entonces las etiquetas se pueden poner en las otras celdas.
<table style="text-align:center">
<tr>
<td></td>
<td>Plot Title Goes Here</td>
<td> </td>
</tr>
<tr>
<td>Y Axis Label</td>
<td>
<div id="graph here" style="width:600px;height:300px"></div>
</td>
<td></td>
</tr>
<tr>
<td></td>
<td>X Axis Label Goes Here</td>
<td></td>
</tr>
</table>
Una solución decente. Creo que para el eje Y, tal vez use una imagen para que pueda obtenerlo vertical. – Orion
$("<div class='axisLabel yaxisLabel'></div>")
.text("Pressure")
.appendTo($("#yl_1"));
Esta voluntad también funciona.
Éste tiene correcciones para el uso de múltiples ejes y el desplazamiento funciona bien también ... https://github.com/mikeslim7/flot-axislabels
Ejemplo para 2dims gráfico (x y el eje y) resuelto con css puro.
eje Y: eje
#placeholder:after {
content: 'Speed';
position: absolute;
top: 50%;
left: -50px;
font-weight: 600;
/* Safari */
-webkit-transform: rotate(-90deg);
/* Firefox */
-moz-transform: rotate(-90deg);
/* IE */
-ms-transform: rotate(-90deg);
/* Opera */
-o-transform: rotate(-90deg);
/* Internet Explorer */
filter: progid:DXImageTransform.Microsoft.BasicImage(rotation=3);
}
X:
#placeholder:before {
content: 'Time';
position: absolute;
bottom: -30px;
left: 50%;
font-weight: 600;
}
I utilizan idea szpapas.
He añadido más código jquery debajo para sobrescribir el eje x de esta manera.
$('div.flot-x-axis div.flot-tick-label.tickLabel:nth-child(1)').html("Berhad")
$('div.flot-x-axis div.flot-tick-label.tickLabel:nth-child(2)').html("")
$('div.flot-x-axis div.flot-tick-label.tickLabel:nth-child(3)').html("Sdn Bhd")
$('div.flot-x-axis div.flot-tick-label.tickLabel:nth-child(4)').html("")
$('div.flot-x-axis div.flot-tick-label.tickLabel:nth-child(5)').html("Enterprise")
$('div.flot-x-axis div.flot-tick-label.tickLabel:nth-child(6)').html("")
$('div.flot-x-axis div.flot-tick-label.tickLabel:nth-child(7)').html("Koperasi")
Voy a intentar hacerlo con divs posicionados. Gracias. – Nobita
La etiqueta del eje y en la [página de inicio] (http://www.flotcharts.org/) se realiza tal como dice esta respuesta: mediante divs cuidadosamente ubicados. Sin embargo, parece que [la versión 0.9 de Flot incluirá etiquetas de ejes] (https://github.com/flot/flot/pull/1090). –
Gracias @MatthewWalker - una vez 0.9 se lanza, actualizaré mi respuesta – Ryley