๐Ÿ˜Ž ๊ณต๋ถ€ํ•˜๋Š” ์ง•์ง•์•ŒํŒŒ์นด๋Š” ์ฒ˜์Œ์ด์ง€?

์›น์—์„œ ๊ทธ๋ž˜ํ”„ ๋งŒ๋“œ๋Š” Google Chart API ์•Œ์•„๋ณด๊ธฐ ๋ณธ๋ฌธ

๐Ÿ‘ฉ‍๐Ÿ’ป ๋ฐฑ์—”๋“œ(Back-End)/Node js

์›น์—์„œ ๊ทธ๋ž˜ํ”„ ๋งŒ๋“œ๋Š” Google Chart API ์•Œ์•„๋ณด๊ธฐ

์ง•์ง•์•ŒํŒŒ์นด 2022. 11. 21. 10:08
728x90
๋ฐ˜์‘ํ˜•

<๋ณธ ๋ธ”๋กœ๊ทธ๋Š” mrlee-sub ๋‹˜ ์˜ ๋ธ”๋กœ๊ทธ๋ฅผ ์ฐธ๊ณ ํ•ด์„œ ๊ณต๋ถ€ํ•˜๋ฉฐ ์ž‘์„ฑํ•˜์˜€์Šต๋‹ˆ๋‹ค :-)>

https://mrlee-sub.tistory.com/329

 

ํ†ต๊ณ„ ๋ฐ์ดํ„ฐ๋ฅผ ์›ํ˜•๊ทธ๋ž˜ํ”„(piechart)๋กœ ๋‚˜ํƒ€๋‚ด๊ธฐ (google chart api ์—ฐ๋™)

๊ตฌ๊ธ€api(google charts api)๋ฅผ ์ด์šฉ, ํ†ต๊ณ„๋ฐ์ดํ„ฐ๋ฅผ ๋‚˜ํƒ€๋‚ผ ๊ฑด๋ฐ โ€‹ ๋จผ์ € google charts api์‚ฌ์ดํŠธ์— ๋ฐฉ๋ฌธํ•ด์„œ ์–ด๋–ค ์†Œ์Šค์ธ์ง€ ์‚ดํŽด๋ด์•ผํ•œ๋‹ค. ์œ„์˜ ์†Œ์Šค๋ฅผ ๊ทธ๋Œ€๋กœ ๊ฐ–๊ณ ์˜ค๋˜ ๋ฐ์ดํ„ฐ๊ฐ’์„ ์กฐ๊ธˆ ๋ฐ”๊ฟ”๋ณด์•˜๋‹ค. ์—ฌ๊ธฐ

mrlee-sub.tistory.com

 

 

 

๐ŸŽบ Real Time graph

๐Ÿ’Ž chart ์˜ˆ์‹œ

 

https://webdeasy.de/en/javascript-real-time-charts/

<!DOCTYPE html>
<html lang="en">
  <head>
    <meta charset="UTF-8" />
    <title>Document</title>
    <style>
      #chart_div {
        width: 1200px;
      }
      body {
        display: flex;
        justify-content: center;
        align-items: center;
      }
    </style>
  </head>
  <body>
    <!-- CONTAINER FOR CHART -->
    <div id="chart_div"></div>
    <script
      type="text/javascript"
      src="https://www.gstatic.com/charts/loader.js"
    ></script>
    <script>
      // load current chart package
      google.charts.load('current', {
        packages: ['corechart', 'line'],
      });
      // set callback function when api loaded
      google.charts.setOnLoadCallback(drawChart);
      function drawChart() {
        // create data object with default value
        let data = google.visualization.arrayToDataTable([
          ['Time', 'CPU Usage', 'RAM'],
          [0, 0, 0],
        ]);
        // create options object with titles, colors, etc.
        let options = {
          title: 'CPU Usage',
          hAxis: {
            textPosition: 'none',
          },
          vAxis: {
            title: 'Usage',
          },
        };
        // draw chart on load
        let chart = new google.visualization.LineChart(
          document.getElementById('chart_div')
        );
        chart.draw(data, options);
        // max amount of data rows that should be displayed
        let maxDatas = 50;
        // interval for adding new data every 250ms
        let index = 0;
        setInterval(function () {
          // instead of this random, you can make an ajax call for the current cpu usage or what ever data you want to display
          let randomCPU = Math.random() * 20;
          let randomRAM = Math.random() * 50 + 20;
          if (data.getNumberOfRows() > maxDatas) {
            data.removeRows(0, data.getNumberOfRows() - maxDatas);
          }
          data.addRow([index, randomCPU, randomRAM]);
          chart.draw(data, options);
          index++;
        }, 100);
      }
    </script>
  </body>
</html>

1) ๊ตฌ๊ธ€api ๊ตฌํ˜„์„ ์œ„ํ•œ ๊ธฐ๋ณธ์†Œ์Šค๋ฅผ ๋ถˆ๋Ÿฌ์˜ค๊ธฐ

src="https://www.gstatic.com/charts/loader.js"

2) ์‹ค์ œ ๋ฐ์ดํ„ฐ์— ๋“ค์–ด๊ฐ€๋Š” ๊ฒƒ์„ ๋„ฃ๊ธฐ

        let data = google.visualization.arrayToDataTable([
          ['Time', 'CPU Usage', 'RAM'],
          [0, 0, 0],
        ]);
        // create options object with titles, colors, etc.
        let options = {
          title: 'CPU Usage',
          hAxis: {
            textPosition: 'none',
          },
          vAxis: {
            title: 'Usage',
          },
        };

3) chart๋ผ๋Š” ์˜ค๋ธŒ์ ํŠธ๊ฐ€ ๊ตฌํ˜„๋  ์žฅ์†Œ๋ฅผ ๋งŒ๋“ค๊ธฐ

    <!-- CONTAINER FOR CHART -->
    <div id="chart_div"></div>

 

 

 

728x90
๋ฐ˜์‘ํ˜•
Comments