You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

102 lines
4.0 KiB

1 year ago
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
  1. <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">
  2. <html>
  3. <head>
  4. <meta http-equiv="Content-Type" content="text/html; charset=utf-8">
  5. <title>amCharts examples</title>
  6. <link rel="stylesheet" href="style.css" type="text/css">
  7. <script src="../amcharts/amcharts.js" type="text/javascript"></script>
  8. <script src="../amcharts/serial.js" type="text/javascript"></script>
  9. <script>
  10. var chart;
  11. var chartData = [];
  12. AmCharts.ready(function () {
  13. // first we generate some random data
  14. generateChartData();
  15. // SERIAL CHART
  16. chart = new AmCharts.AmSerialChart();
  17. chart.dataProvider = chartData;
  18. chart.categoryField = "date";
  19. // data updated event will be fired when chart is first displayed,
  20. // also when data will be updated. We'll use it to set some
  21. // initial zoom
  22. chart.addListener("dataUpdated", zoomChart);
  23. // AXES
  24. // Category
  25. var categoryAxis = chart.categoryAxis;
  26. categoryAxis.parseDates = true; // in order char to understand dates, we should set parseDates to true
  27. categoryAxis.minPeriod = "mm"; // as we have data with minute interval, we have to set "mm" here.
  28. categoryAxis.gridAlpha = 0.07;
  29. categoryAxis.axisColor = "#DADADA";
  30. // Value
  31. var valueAxis = new AmCharts.ValueAxis();
  32. valueAxis.gridAlpha = 0.07;
  33. valueAxis.title = "Unique visitors";
  34. chart.addValueAxis(valueAxis);
  35. // GRAPH
  36. var graph = new AmCharts.AmGraph();
  37. graph.type = "line"; // try to change it to "column"
  38. graph.title = "red line";
  39. graph.valueField = "visits";
  40. graph.lineAlpha = 1;
  41. graph.lineColor = "#d1cf2a";
  42. graph.fillAlphas = 0.3; // setting fillAlphas to > 0 value makes it area graph
  43. chart.addGraph(graph);
  44. // CURSOR
  45. var chartCursor = new AmCharts.ChartCursor();
  46. chartCursor.cursorPosition = "mouse";
  47. chartCursor.categoryBalloonDateFormat = "JJ:NN, DD MMMM";
  48. chart.addChartCursor(chartCursor);
  49. // SCROLLBAR
  50. var chartScrollbar = new AmCharts.ChartScrollbar();
  51. chart.addChartScrollbar(chartScrollbar);
  52. // WRITE
  53. chart.write("chartdiv");
  54. });
  55. // generate some random data, quite different range
  56. function generateChartData() {
  57. // current date
  58. var firstDate = new Date();
  59. // now set 1000 minutes back
  60. firstDate.setMinutes(firstDate.getDate() - 1000);
  61. // and generate 1000 data items
  62. for (var i = 0; i < 1000; i++) {
  63. var newDate = new Date(firstDate);
  64. // each time we add one minute
  65. newDate.setMinutes(newDate.getMinutes() + i);
  66. // some random number
  67. var visits = Math.round(Math.random() * 40) + 10;
  68. // add data item to the array
  69. chartData.push({
  70. date: newDate,
  71. visits: visits
  72. });
  73. }
  74. }
  75. // this method is called when chart is first inited as we listen for "dataUpdated" event
  76. function zoomChart() {
  77. // different zoom methods can be used - zoomToIndexes, zoomToDates, zoomToCategoryValues
  78. chart.zoomToIndexes(chartData.length - 40, chartData.length - 1);
  79. }
  80. </script>
  81. </head>
  82. <body>
  83. <div id="chartdiv" style="width:100%; height:400px;"></div>
  84. </body>
  85. </html>