데이터 시각화를 위한 무료차트
이글은 다양한 유형으로 데이타를 시각화 할 수 있는 차트 중 웹페이지에서 HTML + Javascript로 간단하게 구현 가능한 무료차트를 소개하려 한다.
1. 구글차트
https://developers.google.com/chart/
구글차트는 순수 HTML5 기반으로 플러그인 없이 웹페이지에 간단한 JavaScript만 추가하면 차트를 표시해준다.
영역차트, 바차트, 라인차트, 도넛차트, 게이지차트 등 다양한 유형의 차트를 제공한다.
- 구글차트 라이브러리 로드하기
- 차트로 보여줄 데이타 정의하기
- 차트옵션 설정하기
- 차트를 보여줄 div 개체 만들기
- 
    구글에서 제공하는 차트 유형 
  
1) 컬럼차트 예제
컬럼차트는 X좌표값에 따라 해당하는 값을 세로막대형으로 보여준다.  
이 차트의 가로버전 차트는 바차트(bar chart, 가로막대형 차트)이고,  
다른 구글차트와 같이 사용자가 데이타 위로 마우스를 가져가면 데이타 및 설명이 표시된다.
- 컬럼차트 사용법
  <script type="text/javascript" src="https://www.gstatic.com/charts/loader.js"></script>
  <script type="text/javascript">
      var dataArray = [
          ['Year', 'Sales', 'Expenses'],
          ['2018',  450,       550],
          ['2019',  660,       1120],
          ['2020',  1000,      400],
          ['2021',  1170,      460],
          ['2022',  1030,      540]
      ];
      google.charts.load("current", {packages:['corechart']});
      google.charts.setOnLoadCallback(drawColumnChart);
      function drawColumnChart() {
        var data = google.visualization.arrayToDataTable(dataArray);
        var view = new google.visualization.DataView(data);
        view.setColumns([0, 1,
                        { calc: "stringify",
                          sourceColumn: 1,
                          type: "string",
                          role: "annotation" },
                        2]);
        var options = {
          title: "Company Performance - column",
          width: 500,
          height: 400,
          bar: {groupWidth: "90%"},
          legend: { position: "top" },
        };
        var chart = new google.visualization.ColumnChart(document.getElementById("columnchart"));
        chart.draw(view, options);
    }
2) 라인차트 예제
- 라인차트 사용법
    <script type="text/javascript" src="https://www.gstatic.com/charts/loader.js"></script> <script type="text/javascript"> var dataArray = [ ['Year', 'Sales', 'Expenses'], ['2018', 450, 550], ['2019', 660, 1120], ['2020', 1000, 400], ['2021', 1170, 460], ['2022', 1030, 540] ]; google.charts.load('current', {'packages':['corechart']}); google.charts.setOnLoadCallback(drawLineChart); function drawLineChart() { var data = google.visualization.arrayToDataTable(dataArray); var options = { title: 'Company Performance - line', width: 500, height: 400, curveType: 'function', legend: { position: 'bottom' } }; var chart = new google.visualization.LineChart(document.getElementById('linechart')); chart.draw(data, options); } </script>
2. amcharts
www.amcharts.com/demos/
구글차트와 마찬가지로 웹페이지에 간단한 JavaScript만 추가하면 차트를 표시해준다.
또한 React, Angular, Vue와 같은 최신 웹 개발 툴킷과 함께 작동하도록 설계되었기 때문에 쉽게 적용이 가능하다.
- amcharts에서 제공하는 차트 유형  
  
1) 바차트 예제
3. chart.js
www.chartjs.org
HTML5와 Javascript로 canvas element에 차트 생성이 가능하다.
- 
    chartjs에서 제공하는 차트 유형 
  
- 
    chartjs 차트 사용법 
<!-- markdown에서 canvas를 지원하지 않아 예제 구현이 불가 -->
<script src="https://cdnjs.cloudflare.com/ajax/libs/Chart.js/3.7.1/chart.min.js"></script>
<script type="text/javascript">
var ctx = document.getElementById('myChart').getContext('2d');
var myChart = new Chart(ctx, {
    type: 'bar',
    data: {
        labels: ['Red', 'Blue', 'Yellow', 'Green', 'Purple', 'Orange'],
        datasets: [{
            label: '# of Votes',
            data: [12, 19, 3, 5, 2, 3],
            backgroundColor: [
                'rgba(255, 99, 132, 0.2)',
                'rgba(54, 162, 235, 0.2)',
                'rgba(255, 206, 86, 0.2)',
                'rgba(75, 192, 192, 0.2)',
                'rgba(153, 102, 255, 0.2)',
                'rgba(255, 159, 64, 0.2)'
            ],
            borderColor: [
                'rgba(255, 99, 132, 1)',
                'rgba(54, 162, 235, 1)',
                'rgba(255, 206, 86, 1)',
                'rgba(75, 192, 192, 1)',
                'rgba(153, 102, 255, 1)',
                'rgba(255, 159, 64, 1)'
            ],
            borderWidth: 1
        }]
    },
    options: {
        scales: {
            y: {
                beginAtZero: true
            }
        }
    }
});
</script>
<canvas id="myChart" style="width: 500px; height: 400px;">차트 출력</canvas>
markdown에서 canvas를 지원하지 않아 예제 구현이 불가하다.
 
       
       
       
      
댓글남기기