UNPKG

@amcharts/amcharts4

Version:
899 lines (883 loc) 12 kB
import * as am4core from "@amcharts/amcharts4/core"; import * as am4charts from "@amcharts/amcharts4/charts"; import am4themes_animated from "@amcharts/amcharts4/themes/animated"; import am4themes_dark from "@amcharts/amcharts4/themes/dark"; am4core.useTheme(am4themes_animated); am4core.useTheme(am4themes_dark); let chart = am4core.create("chartdiv", am4charts.XYChart); chart.maskBullets = false; let xAxis = chart.xAxes.push(new am4charts.CategoryAxis()); let yAxis = chart.yAxes.push(new am4charts.CategoryAxis()); xAxis.dataFields.category = "weekday"; xAxis.renderer.minGridDistance = 40; yAxis.dataFields.category = "hour"; xAxis.renderer.grid.template.disabled = true; yAxis.renderer.grid.template.disabled = true; yAxis.renderer.inversed = true; var series = chart.series.push(new am4charts.ColumnSeries()); series.dataFields.categoryX = "weekday"; series.dataFields.categoryY = "hour"; series.dataFields.value = "value"; series.columns.template.disabled = true; series.sequencedInterpolation = true; var bullet = series.bullets.push(new am4charts.CircleBullet()); bullet.tooltipText = "{weekday}, {hour}: {value.workingValue.formatNumber('#.')}"; bullet.strokeWidth = 3; bullet.stroke = am4core.color("#ffffff"); bullet.strokeOpacity = 0; bullet.adapter.add("tooltipY", (tooltipY, target) => { return -target.circle.radius + 1; }) series.heatRules.push({property:"radius", target:bullet.circle, min:2, max:22}); bullet.hiddenState.properties.scale = 0.01; bullet.hiddenState.properties.opacity = 1; var hoverState = bullet.states.create("hover"); hoverState.properties.strokeOpacity = 1; chart.data = [ { "hour": "12pm", "weekday": "Sun", "value": 2990 }, { "hour": "1am", "weekday": "Sun", "value": 2520 }, { "hour": "2am", "weekday": "Sun", "value": 2334 }, { "hour": "3am", "weekday": "Sun", "value": 2230 }, { "hour": "4am", "weekday": "Sun", "value": 2325 }, { "hour": "5am", "weekday": "Sun", "value": 2019 }, { "hour": "6am", "weekday": "Sun", "value": 2128 }, { "hour": "7am", "weekday": "Sun", "value": 2246 }, { "hour": "8am", "weekday": "Sun", "value": 2421 }, { "hour": "9am", "weekday": "Sun", "value": 2788 }, { "hour": "10am", "weekday": "Sun", "value": 2959 }, { "hour": "11am", "weekday": "Sun", "value": 3018 }, { "hour": "12am", "weekday": "Sun", "value": 3154 }, { "hour": "1pm", "weekday": "Sun", "value": 3172 }, { "hour": "2pm", "weekday": "Sun", "value": 3368 }, { "hour": "3pm", "weekday": "Sun", "value": 3464 }, { "hour": "4pm", "weekday": "Sun", "value": 3746 }, { "hour": "5pm", "weekday": "Sun", "value": 3656 }, { "hour": "6pm", "weekday": "Sun", "value": 3336 }, { "hour": "7pm", "weekday": "Sun", "value": 3292 }, { "hour": "8pm", "weekday": "Sun", "value": 3269 }, { "hour": "9pm", "weekday": "Sun", "value": 3300 }, { "hour": "10pm", "weekday": "Sun", "value": 3403 }, { "hour": "11pm", "weekday": "Sun", "value": 3323 }, { "hour": "12pm", "weekday": "Mon", "value": 3346 }, { "hour": "1am", "weekday": "Mon", "value": 2725 }, { "hour": "2am", "weekday": "Mon", "value": 3052 }, { "hour": "3am", "weekday": "Mon", "value": 3876 }, { "hour": "4am", "weekday": "Mon", "value": 4453 }, { "hour": "5am", "weekday": "Mon", "value": 3972 }, { "hour": "6am", "weekday": "Mon", "value": 4644 }, { "hour": "7am", "weekday": "Mon", "value": 5715 }, { "hour": "8am", "weekday": "Mon", "value": 7080 }, { "hour": "9am", "weekday": "Mon", "value": 8022 }, { "hour": "10am", "weekday": "Mon", "value": 8446 }, { "hour": "11am", "weekday": "Mon", "value": 9313 }, { "hour": "12am", "weekday": "Mon", "value": 9011 }, { "hour": "1pm", "weekday": "Mon", "value": 8508 }, { "hour": "2pm", "weekday": "Mon", "value": 8515 }, { "hour": "3pm", "weekday": "Mon", "value": 8399 }, { "hour": "4pm", "weekday": "Mon", "value": 8649 }, { "hour": "5pm", "weekday": "Mon", "value": 7869 }, { "hour": "6pm", "weekday": "Mon", "value": 6933 }, { "hour": "7pm", "weekday": "Mon", "value": 5969 }, { "hour": "8pm", "weekday": "Mon", "value": 5552 }, { "hour": "9pm", "weekday": "Mon", "value": 5434 }, { "hour": "10pm", "weekday": "Mon", "value": 5070 }, { "hour": "11pm", "weekday": "Mon", "value": 4851 }, { "hour": "12pm", "weekday": "Tue", "value": 4468 }, { "hour": "1am", "weekday": "Tue", "value": 3306 }, { "hour": "2am", "weekday": "Tue", "value": 3906 }, { "hour": "3am", "weekday": "Tue", "value": 4413 }, { "hour": "4am", "weekday": "Tue", "value": 4726 }, { "hour": "5am", "weekday": "Tue", "value": 4584 }, { "hour": "6am", "weekday": "Tue", "value": 5717 }, { "hour": "7am", "weekday": "Tue", "value": 6504 }, { "hour": "8am", "weekday": "Tue", "value": 8104 }, { "hour": "9am", "weekday": "Tue", "value": 8813 }, { "hour": "10am", "weekday": "Tue", "value": 9278 }, { "hour": "11am", "weekday": "Tue", "value": 10425 }, { "hour": "12am", "weekday": "Tue", "value": 10137 }, { "hour": "1pm", "weekday": "Tue", "value": 9290 }, { "hour": "2pm", "weekday": "Tue", "value": 9255 }, { "hour": "3pm", "weekday": "Tue", "value": 9614 }, { "hour": "4pm", "weekday": "Tue", "value": 9713 }, { "hour": "5pm", "weekday": "Tue", "value": 9667 }, { "hour": "6pm", "weekday": "Tue", "value": 8774 }, { "hour": "7pm", "weekday": "Tue", "value": 8649 }, { "hour": "8pm", "weekday": "Tue", "value": 9937 }, { "hour": "9pm", "weekday": "Tue", "value": 10286 }, { "hour": "10pm", "weekday": "Tue", "value": 9175 }, { "hour": "11pm", "weekday": "Tue", "value": 8581 }, { "hour": "12pm", "weekday": "Wed", "value": 8145 }, { "hour": "1am", "weekday": "Wed", "value": 7177 }, { "hour": "2am", "weekday": "Wed", "value": 5657 }, { "hour": "3am", "weekday": "Wed", "value": 6802 }, { "hour": "4am", "weekday": "Wed", "value": 8159 }, { "hour": "5am", "weekday": "Wed", "value": 8449 }, { "hour": "6am", "weekday": "Wed", "value": 9453 }, { "hour": "7am", "weekday": "Wed", "value": 9947 }, { "hour": "8am", "weekday": "Wed", "value": 11471 }, { "hour": "9am", "weekday": "Wed", "value": 12492 }, { "hour": "10am", "weekday": "Wed", "value": 9388 }, { "hour": "11am", "weekday": "Wed", "value": 9928 }, { "hour": "12am", "weekday": "Wed", "value": 9644 }, { "hour": "1pm", "weekday": "Wed", "value": 9034 }, { "hour": "2pm", "weekday": "Wed", "value": 8964 }, { "hour": "3pm", "weekday": "Wed", "value": 9069 }, { "hour": "4pm", "weekday": "Wed", "value": 8898 }, { "hour": "5pm", "weekday": "Wed", "value": 8322 }, { "hour": "6pm", "weekday": "Wed", "value": 6909 }, { "hour": "7pm", "weekday": "Wed", "value": 5810 }, { "hour": "8pm", "weekday": "Wed", "value": 5151 }, { "hour": "9pm", "weekday": "Wed", "value": 4911 }, { "hour": "10pm", "weekday": "Wed", "value": 4487 }, { "hour": "11pm", "weekday": "Wed", "value": 4118 }, { "hour": "12pm", "weekday": "Thu", "value": 3689 }, { "hour": "1am", "weekday": "Thu", "value": 3081 }, { "hour": "2am", "weekday": "Thu", "value": 6525 }, { "hour": "3am", "weekday": "Thu", "value": 6228 }, { "hour": "4am", "weekday": "Thu", "value": 6917 }, { "hour": "5am", "weekday": "Thu", "value": 6568 }, { "hour": "6am", "weekday": "Thu", "value": 6405 }, { "hour": "7am", "weekday": "Thu", "value": 8106 }, { "hour": "8am", "weekday": "Thu", "value": 8542 }, { "hour": "9am", "weekday": "Thu", "value": 8501 }, { "hour": "10am", "weekday": "Thu", "value": 8802 }, { "hour": "11am", "weekday": "Thu", "value": 9420 }, { "hour": "12am", "weekday": "Thu", "value": 8966 }, { "hour": "1pm", "weekday": "Thu", "value": 8135 }, { "hour": "2pm", "weekday": "Thu", "value": 8224 }, { "hour": "3pm", "weekday": "Thu", "value": 8387 }, { "hour": "4pm", "weekday": "Thu", "value": 8218 }, { "hour": "5pm", "weekday": "Thu", "value": 7641 }, { "hour": "6pm", "weekday": "Thu", "value": 6469 }, { "hour": "7pm", "weekday": "Thu", "value": 5441 }, { "hour": "8pm", "weekday": "Thu", "value": 4952 }, { "hour": "9pm", "weekday": "Thu", "value": 4643 }, { "hour": "10pm", "weekday": "Thu", "value": 4393 }, { "hour": "11pm", "weekday": "Thu", "value": 4017 }, { "hour": "12pm", "weekday": "Fri", "value": 4022 }, { "hour": "1am", "weekday": "Fri", "value": 3063 }, { "hour": "2am", "weekday": "Fri", "value": 3638 }, { "hour": "3am", "weekday": "Fri", "value": 3968 }, { "hour": "4am", "weekday": "Fri", "value": 4070 }, { "hour": "5am", "weekday": "Fri", "value": 4019 }, { "hour": "6am", "weekday": "Fri", "value": 4548 }, { "hour": "7am", "weekday": "Fri", "value": 5465 }, { "hour": "8am", "weekday": "Fri", "value": 6909 }, { "hour": "9am", "weekday": "Fri", "value": 7706 }, { "hour": "10am", "weekday": "Fri", "value": 7867 }, { "hour": "11am", "weekday": "Fri", "value": 8615 }, { "hour": "12am", "weekday": "Fri", "value": 8218 }, { "hour": "1pm", "weekday": "Fri", "value": 7604 }, { "hour": "2pm", "weekday": "Fri", "value": 7429 }, { "hour": "3pm", "weekday": "Fri", "value": 7488 }, { "hour": "4pm", "weekday": "Fri", "value": 7493 }, { "hour": "5pm", "weekday": "Fri", "value": 6998 }, { "hour": "6pm", "weekday": "Fri", "value": 5941 }, { "hour": "7pm", "weekday": "Fri", "value": 5068 }, { "hour": "8pm", "weekday": "Fri", "value": 4636 }, { "hour": "9pm", "weekday": "Fri", "value": 4241 }, { "hour": "10pm", "weekday": "Fri", "value": 3858 }, { "hour": "11pm", "weekday": "Fri", "value": 3833 }, { "hour": "12pm", "weekday": "Sat", "value": 3503 }, { "hour": "1am", "weekday": "Sat", "value": 2842 }, { "hour": "2am", "weekday": "Sat", "value": 2808 }, { "hour": "3am", "weekday": "Sat", "value": 2399 }, { "hour": "4am", "weekday": "Sat", "value": 2280 }, { "hour": "5am", "weekday": "Sat", "value": 2139 }, { "hour": "6am", "weekday": "Sat", "value": 2527 }, { "hour": "7am", "weekday": "Sat", "value": 2940 }, { "hour": "8am", "weekday": "Sat", "value": 3066 }, { "hour": "9am", "weekday": "Sat", "value": 3494 }, { "hour": "10am", "weekday": "Sat", "value": 3287 }, { "hour": "11am", "weekday": "Sat", "value": 3416 }, { "hour": "12am", "weekday": "Sat", "value": 3432 }, { "hour": "1pm", "weekday": "Sat", "value": 3523 }, { "hour": "2pm", "weekday": "Sat", "value": 3542 }, { "hour": "3pm", "weekday": "Sat", "value": 3347 }, { "hour": "4pm", "weekday": "Sat", "value": 3292 }, { "hour": "5pm", "weekday": "Sat", "value": 3416 }, { "hour": "6pm", "weekday": "Sat", "value": 3131 }, { "hour": "7pm", "weekday": "Sat", "value": 3057 }, { "hour": "8pm", "weekday": "Sat", "value": 3227 }, { "hour": "9pm", "weekday": "Sat", "value": 3060 }, { "hour": "10pm", "weekday": "Sat", "value": 2855 }, { "hour": "11pm", "weekday": "Sat", "value": 2625 } ]; // this changes data each 5 seconds setInterval(function(){ series.dataItems.each(function(dataItem){ dataItem.value += Math.round((Math.random() * 5000)); }) }, 3000)