Foros del Web » Programando para Internet » Javascript »

Creando Graficos

Estas en el tema de Creando Graficos en el foro de Javascript en Foros del Web. Buenas! y gracias de antemano; resulta que estoy creando graficos con una libreria que encontre en la web; solo quiero graficos simples nada complicado, por ...
  #1 (permalink)  
Antiguo 04/08/2008, 02:36
 
Fecha de Ingreso: junio-2008
Mensajes: 168
Antigüedad: 15 años, 10 meses
Puntos: 0
Creando Graficos

Buenas! y gracias de antemano; resulta que estoy creando graficos con una libreria que encontre en la web; solo quiero graficos simples nada complicado, por medio de unas cosultas obtengo datos y simplemente rellenar!!!los graficos me salen en pantalla y todo muy bonito,pero poniendo los valores a mano.Ejemplo:

<script>
//instanciamos la gráfica
graph = new BAR_GRAPH("hBar");

//definimos las etiquetas que acompañarán a cada pareja de valores
graph.labels = "Jan.,Feb.,Mar.,Apr.,May";
//inicializamos los datos. 1 elemento tiene un grupo de dos valores.
graph.values = "380;420, 150;340, 260;120, 310;250, 430;370";
//definimos una leyenda
graph.legend = "2001,2002";
//mostramos la gráfica en la página
document.write(graph.create());

</script>

mi duda es la siguiente los labels y values los obtengo de una BD , estoy usando java que controlo y jsp! pero mi duda es sobre JavaScript.Yo guardo los valores en unos hidden "archivos ocultas", asi luego obtengo los valores, bien ahi va mi pregunta!como puedo obtener esos valores en java script es decir partiendo de un array como relleno o como paso un array lleno como parametro de entrada me explico?

Array a= new Array[x];//values
Array b= new Array[x];//labels
<script>
funcion graficar(Array a,Array b){
//instanciamos la gráfica
graph = new BAR_GRAPH("hBar");
for(x=0;x.length;x++){
valor=a[x];
label=b[x];
//definimos las etiquetas que acompañarán a cada pareja de valores
graph.labels =" +valor+";";
//inicializamos los datos. 1 elemento tiene un grupo de dos valores.
graph.values = =" +label+";";
}
//definimos una leyenda
graph.legend = "2001,2002";
//mostramos la gráfica en la página
document.write(graph.create());
}
<script>

algo asi sería esq nose como se escriben los arrays en javaScript igual he puesto burrada . gracias
  #2 (permalink)  
Antiguo 04/08/2008, 02:54
venkman
Invitado
 
Mensajes: n/a
Puntos:
Respuesta: Creando Graficos

Algunos detalles:
0. No llames a tus variables a y b y luego pongas comentarios de lo que son. Llámalas con lo que son.
1. Javascript no define tipos. No necesitas poner Array labels = new Array(); sino var labels = new Array(); Tampoco lo pongas en los parámetros de la función graficar. (Tampoco es new Array[] sino new Array())
2. No guardes los valores en campos hidden para luego tener que sacarlos. Escríbelos directamente en Javascript:
Código:
var labels = ["hola","que","tal"];
var values = [1,2,3];
3. Busca un buen libro sobre Javascript. O en su defecto, un tutorial. O como mínimo, alguna guía de sintaxis. [1] [2] [3] [4] [5]
  #3 (permalink)  
Antiguo 04/08/2008, 03:03
 
Fecha de Ingreso: junio-2008
Mensajes: 168
Antigüedad: 15 años, 10 meses
Puntos: 0
Respuesta: Creando Graficos

Gracias!! una duda simplremente yo si voy metiendo datos a un array llamado:

var datos =[.....];

Luego dentro de un script me reconoce tal array es decir podria hacer esto:

var labels= datos;

Estoy leyendo manual paso a paso y viene todo pero no al detalle por eso pregunto y
gracias muchas gracias
  #4 (permalink)  
Antiguo 04/08/2008, 03:11
venkman
Invitado
 
Mensajes: n/a
Puntos:
Respuesta: Creando Graficos

Claro, puedes asignar una variable a otra. No veo problema.
  #5 (permalink)  
Antiguo 04/08/2008, 03:40
 
Fecha de Ingreso: junio-2008
Mensajes: 168
Antigüedad: 15 años, 10 meses
Puntos: 0
Respuesta: Creando Graficos

Yo lo que quiero es llenar un vector y luego asignarlo es simple pero me toy liando pk tanto lenguaje diferente me va matar!!!!
<%
while(condicion){//
//obtengo valor BD ya se q asi no es pero pa resumir
double dato=7.5;
%>
<script>
var valores=[dato];//pero como se hace en java script????la siguiente vuelta y tal pk todo los vectores q visto en manuales eran asi coches=["audi","BMW"] como avanzo y eso
</script>
<%
}
%>

algo tan simple y la q estoy liando!!!!Gracias me ayudas?solo me kda este tema por solucionar!!
<%


}
  #6 (permalink)  
Antiguo 04/08/2008, 04:05
venkman
Invitado
 
Mensajes: n/a
Puntos:
Respuesta: Creando Graficos

A ver, tu problema no es de Javascript. Es que estás mezclando y no tienes claro qué es lo que quieres hacer (o por lo menos no lo explicas bien).

A ver, yo entiendo esto:
- Tienes unos datos en Java
- Los recorres con un while
- Quieres pasar todos esos datos a un array Javascript
¿Es eso o estás intentando hacer otra cosa? Explica qué es lo que quieres conseguir, por favor.
  #7 (permalink)  
Antiguo 04/08/2008, 05:47
 
Fecha de Ingreso: junio-2008
Mensajes: 168
Antigüedad: 15 años, 10 meses
Puntos: 0
Respuesta: Creando Graficos

Buenas estoy cogiendo datos de la BD y necesito llenar dos vectores en javaScript!!!alguien sabe que esta mal?no los llena!! aqui dejo el codigo muchas gracias!!!

<script language="javascript">
var notas= new Array();
var nombre= new Array();
<%
dniAlumno = (String) session.getAttribute("dniAlumno");
ControladorBD cbd = new ControladorBD();
String codGrupo=request.getParameter("codGrupo");
int codMateria=cbd.obtCodMateria(codGrupo,cbd.abrirCon exion());
try {
Connection pCon = cbd.abrirConexion();
String sql = "SELECT calificacion,nombreActividad FROM nota WHERE codMateria='"+codMateria+"' AND dniAlumno='"+dniAlumno+"';";
Statement stmt = pCon.createStatement();
ResultSet rs = stmt.executeQuery(sql);
if(!rs.next()){
out.println("No tiene actividades calificacadas");
}
else{
rs = stmt.executeQuery(sql);
int cont=0;
while(rs.next()){
String nombre = rs.getString("nombreActividad");
double nota = rs.getDouble("calificacion");
if((nombre.compareTo("Examen final")==0)||(nombre.compareTo("Examen parcial")==0)){
//no haga nada
}
else{//es una practica
String n="n"+cont;
String nom="nom"+cont;
%>
notas[]=<%out.println(n);%>
nombre[]=<%out.println(nom);%>

<%
cont++;
session.setAttribute("contador",cont);
}

}//fin del while
}//fin del else
} catch (SQLException ex) {
}
%>
</script>
  #8 (permalink)  
Antiguo 04/08/2008, 06:03
venkman
Invitado
 
Mensajes: n/a
Puntos:
Respuesta: Creando Graficos

En lugar de
Código:
notas[]=<%out.println(n);%>
nombre[]=<%out.println(nom);%>
Pon
Código:
notas[notas.length] = "<%= n %>";
nombre[nombre.length] = "<%= nom %>";
  #9 (permalink)  
Antiguo 04/08/2008, 06:21
 
Fecha de Ingreso: junio-2008
Mensajes: 168
Antigüedad: 15 años, 10 meses
Puntos: 0
Respuesta: Creando Graficos

algo ha salido pero todo ceros;como q no conecta con la base de datos será al mezclar los dos lenguajes java y javaScript
  #10 (permalink)  
Antiguo 04/08/2008, 06:24
 
Fecha de Ingreso: junio-2008
Mensajes: 168
Antigüedad: 15 años, 10 meses
Puntos: 0
Respuesta: Creando Graficos

ya esta solucionado!!!!muchas gracias!!!!!!
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 18:24.