Publicentral.com - promocion,paginas,web,tutores,publicentralPromocion de paginas webs
Mostrando Codigo - Javascript
Code

Javascript - Dibujar un grafico de lineas

Códigos Javascript

Si queremos mostrar en nuestra web algun tipo de estadisticas este codigo puede ser bastante util, incluso solo para aprender el modo de crear graficos con javascript.
Visitas: 29,551 - 20/10/2003 2:36:12
DemoNO CONTIENE ARCHIVO DESCARGABLEComentario
CODIGO
Este codigo aun no ha sido probado por Tutores.org en ChromeEste codigo aun no ha sido probado por Tutores.org en FirefoxCodigo probado en Internet Explorer 7+Este codigo aun no ha sido probado por Tutores.org en OperaEste codigo aun no ha sido probado por Tutores.org en Safari


# Codigo ofrecido por Tutores.org

  1. <HTML>
  2. <HEAD>
  3. <SCRIPT>
  4. function LineChart (top, left, width, height, bgColor) {
  5.   this.id = LineChart.currentId++;
  6.   this.top = top;
  7.   this.left = left;
  8.   this.width = width;
  9.   this.height = height;
  10.   this.bgColor = bgColor;
  11.   if (document.layers) {
  12.     this.chart = new Layer(this.width);
  13.     this.chart.left = left;
  14.     this.chart.top = top;
  15.     this.chart.bgColor = this.bgColor;
  16.     this.chart.clip.width = this.width;
  17.     this.chart.clip.height = this.height;
  18.     this.chart.visibility = 'show';
  19.   }
  20.   else if (document.all || document.getElementById) {
  21.     var html = '';
  22.     html += '<DIV ID="chart' + this.id + '"';
  23.     html += ' STYLE="';
  24.     html += ' position: absolute; left: ' + this.left + 'px; top: ' +
  25. this.top + 'px;';
  26.     html += ' overflow: hidden;';
  27.     html += ' width: ' + this.width + 'px; height: ' + this.height
  28. + 'px;';
  29.     html += ' background-color: ' + this.bgColor + ';';
  30.     html += '"';
  31.     html += '>';
  32.     html += '</DIV>';
  33.     if (document.all) {
  34.       document.body.insertAdjacentHTML('beforeEnd', html);
  35.       this.chart = document.all['chart' + this.id];
  36.     }
  37.     else {
  38.       var range = document.createRange();
  39.       range.setStartAfter(document.body.lastChild);
  40.       var docFrag = range.createContextualFragment(html);
  41.       document.body.appendChild(docFrag);
  42.       this.chart = document.getElementById('chart' + this.id);
  43.     }
  44.   }
  45. }
  46. function LineChart_addGraph (points, color) {
  47.   this.plotPoints(points, color);
  48. }
  49. LineChart.prototype.addGraph = LineChart_addGraph;
  50. function LineChart_plotPoints (points, color) {
  51.   for (var p = 0; p < points.length; p++) {
  52.     var x = points[p].x;
  53.     var y = this.height - points[p].y;
  54.     if (document.layers) {
  55.       var l = new Layer (1, this.chart);
  56.       l.clip.width = l.clip.height = 1;
  57.       l.left = x; l.top = y;
  58.       l.bgColor = color;
  59.       l.visibility = 'show';
  60.     }
  61.     else if (document.all || document.getElementById) {
  62.       var html = '';
  63.       html += '<SPAN';
  64.       html += ' STYLE="';
  65.       html += ' position: absolute; left: ' + x + 'px; top: ' + y
  66. + 'px;';
  67.       html += ' width: 1px; height: 1px;';
  68.       html += document.all ? ' clip: rect(0 1 1 0);' : '';
  69.       html += ' background-color: ' + color + ';';
  70.       html += '"';
  71.       html += '>';
  72.       html += '</SPAN>';
  73.       if (document.all)
  74.         this.chart.insertAdjacentHTML('beforeEnd', html);
  75.       else {
  76.         var range = document.createRange();
  77.         range.setStartAfter(this.chart.lastChild);
  78.         var docFrag = range.createContextualFragment(html);
  79.         this.chart.appendChild(docFrag);
  80.       }
  81.     }
  82.   }
  83. }
  84. LineChart.prototype.plotPoints = LineChart_plotPoints;
  85. function LineChart_addAxis (type, pos, color) {
  86.   var width = type = 'horizontal' ? this.width : 1;
  87.   var height = type = 'horizontal' ? 1 : this.height;
  88.   var left = type = 'horizontal' ? 0 : pos;
  89.   var top = type = 'horizontal' ? this.height - pos : 0;
  90.   if (document.layers) {
  91.     var l = new Layer (width, this.chart);
  92.     l.left = left; l.top = top;
  93.     l.clip.width = width; l.clip.height = height;
  94.     l.bgColor = color;
  95.     l.visibility = 'show';
  96.   }
  97.   else if (document.all || document.getElementById) {
  98.     var html = '';
  99.     html += '<SPAN';
  100.     html += ' STYLE="position: absolute; left: ' + left + 'px; top: ' +
  101. top + 'px;';
  102.     html += ' width: ' + width + 'px; height: ' + height + 'px;';
  103.     html += document.all ?
  104.              ' clip: rect (0 ' + width + ' ' + height + ' 0);' : '';
  105.     html += ' background-color: ' + color + ';';
  106.     html += '"';
  107.     html += '>';
  108.     html += '</SPAN>';
  109.     if (document.all)
  110.       this.chart.insertAdjacentHTML('beforeEnd', html);
  111.     else {
  112.       var range = document.createRange();
  113.       range.setStartAfter(this.chart.lastChild);
  114.       var docFrag = range.createContextualFragment(html);
  115.       this.chart.appendChild(docFrag);
  116.     }
  117.   }
  118. }
  119. LineChart.prototype.addAxis = LineChart_addAxis;
  120. LineChart.currentId = 0;
  121. function Point (x, y) {
  122.   this.x = x;
  123.   this.y = y;
  124. }
  125. </SCRIPT>
  126. <SCRIPT>
  127. function init () {
  128.   var chart1 = new LineChart (100, 100, 200, 200, '#999999');
  129.   chart1.addAxis ('horizontal', 40, 'black');
  130.   var points = new Array();
  131.   var p, x;
  132.   for (x = 0, p = 0; x <= 200; p++, x += 2)
  133.     points[p] = new Point(x, x);
  134.   chart1.addGraph (points, '#000000');
  135.   for (x = 0, p = 0; x <= 200; p++, x += 1)
  136.     points[p] = new Point(x, 0.02 * x * x);
  137.   chart1.addGraph (points, '#660000');
  138.   for (x = 0, p = 0; x <= 200; p++, x += 1)
  139.     points[p] = new Point(x, 40 + 2 * Math.sin(x));
  140.   chart1.addGraph (points, '#cc0000');
  141. }
  142. </SCRIPT>
  143. </HEAD>
  144. <BODY ONLOAD="init()">
  145.  
  146. </BODY>
  147. </HTML>



ENLACE AL CODIGO
Si quieres enlazar desde tu pagina a este codigo
<!-- Inicio enlace Tutores.org -->
<a title="Tutores.org - Dibujar un grafico de lineas" href="http://www.tutores.org/codigo/772/" target="_blank">Dibujar un grafico de lineas</a>
<!-- Final enlace Tutores.org -->
COMENTARIOS
Comentario usuario
25-01-2009 20:26:19
1 5
No estaría mal una explicación de como funciona el código para que los neófitos aprendamos algo.
INSERTAR COMENTARIO

Usuario:
Email:
Comentario:
Codigo Seguridad


Antes de enviar un comentario...
Todos los comentarios son revisados personalmente
Todo comentario que no haga relacion al codigo mostrado en esta pagina sera eliminado

Usuarios registrados tienen preferencia en recibir respuestas de ayuda!!
Ademas de poder insertar Imagenes,Enlaces y otras propiedades del editor.
Por favor, insertar los comentarios descriptivos.