Cita: Es que parece que has puesto
< cat archivo
cuando debe ser
< archivo
Terrible error, ciego perdido !!!!!
------------------------------ Recapitulando sobre el problema --------------------------------------------------
me centrare solo en la parte de la asignacion de datos a la tabla para que el API pueda gestionarlo, el script entero esta en la cabecera del POST.
Teniendo los datos en negrita definidos y estaticos
Código:
function drawChart() {
var data = google.visualization.arrayToDataTable([
['literal-1' , 'literal-2' ]
[ dato1-1 , dato1-2 ]
[ dato2-1 , dato2-2 ]
[ dato3-1 , dato3-2 ]
]);
yo me propuse realizar algo mas util y dinamico que permitiera la entrada de datos desde un fichero externo.
fue cuando cambie los valores fijos a valores guardados en array, leidos previamente de un 'csv' - poniendo las variables cambiantes en el formato entendible del API que es entre corchetes:
no crei inicialmente que funcionara, pero se lo comio!!! y funciona:
Código:
function drawChart() {
var data = google.visualization.arrayToDataTable([
[${q[1]}],
[${q[2]}],
[${q[3]}],
[${q[4]}],
[${q[5]}],
[${q[6]}],
[${q[7]}],
[${q[9]}],
[${q[10]}],
[${q[11]}],
[${q[12]}],
[${q[13]}]
]);
Y la pregunta/dilema/asunto es como reducir la deficion de los datos entre corchetes utilizando un bucle for o while , ya que en esta ocasion solo son 13 elementos a definir, pero si se tratara de dar - por ejemplo -, una grafica de temperaturas anual, dia a dia, ya serian 365 valores entre corchetes y no es que sea imposible, pero ......................
__________________________________________________ _______________
Durante estos dias estuve pensando en la 'burda' posibilidad de crear 2 archivos fijos:
zona alta:
Código:
<html>
<head>
<script type="text/javascript" src="https://www.google.com/jsapi"></script>
<script type="text/javascript">
google.load("visualization", "1", {packages:["corechart"]});
google.setOnLoadCallback(drawChart);
function drawChart() {
var data = google.visualization.arrayToDataTable([
zona baja:
Código:
var chart = new google.visualization.LineChart(document.getElementById('chart_div'));
chart.draw(data, options);
}
</script>
</head>
<body>
<div id="chart_div" style="width: 1000px; height: 600px;"></div>
</body>
</html>
EOF
####################################### final del codigo generador
###################### Envio por email del resultado ##################
echo ''|mutt -s "Grafico Z45" -a $TEMP -b [[email protected]]
#######################
crear un archivo que me acumule directamente los datos necesarios en el formato valido:
Código:
['Mes','Ventas','Gastos'],
[ '1', 287646,14587],
[ '2', 385249,14463],
[ '3', 404357,16486],
[ '4', 367725,15428],
[ '5', 361848,14433],
[ '6', 356989,13454],
[ '8', 287788,13351],
[ '9', 343504,14460],
[ '10', 327881,14022],
[ '11', 285226,13867],
[ '12', 296442,15402]
Y utilizar la fusion de los tres, una forma muy poco ortodoxa pero que quizas hasta que no me ilumine un poco mas sea valida -por el momento-