프로그래밍/WEB

[JS][코드조각] BasicChartJS

목차
  1. 파일
  2. 구현기능
  3. 사용 순서
  4. ChartJS의 옵션들
  5. 문제점
  6. getData -> ajax 사용법
  7. CHART JS LICENSE
반응형

BasicChartJS

 

GitHub - hbcha0916/BasicChartJS

Contribute to hbcha0916/BasicChartJS development by creating an account on GitHub.

github.com

 

공통함수화로 코드의 재사용을 최소화.

파일

chartJS는 최신버전 사용을 권장, 내장된 chartJS를 기반으로 만든 basicChartJS파일임.

  1. chart.js 관련 js파일
  2. basicChartJS 파일
  3. 예제 HTML파일

구현기능

  • 기본옵션을 반응형으로 변경
  • BarChart기준으로 쉬운사용

사용 순서

  1. $.extend(true,<TARGET>,basicChartJS);으로 덮어씌워 사용
  2. canvas 상위태그에 대한 뷰포트 지정(canvas에 지정하면 차트가 깨지는 문제가 있음.)
  3. init으로 chart가 보여질 태그ID지정
  4. getData으로 Ajax(혹은 다른방법)데이터를 가져옴
  5. draw으로 차트를 그림

ChartJS의 옵션들

공통 테이블의 기본 옵션변경 및 옵션추가를 하려면 basicChartJS에서 기본 속성을 변경할 수 있음.

🔍ChartJS Docs

문제점

  • 원형차트 등은 미구현(아직 쓸일이 없었음.)

getData -> ajax 사용법

var sampleData = []
var testChart = {
    ...,
    getData: function(){
        $.ajax({
            url: 'url',
            method: 'get || post || ...',
            contentType:"application/json",
            ...
            success: function (data, status, xhr) {
                this.chartDataSets = [
                    {
                        label: ${라벨},
                        data: ${데이터},
                        backgroundColor: ['rgba(255, 159, 64, 0.2)'],
                        borderColor: ['rgb(255, 159, 64)'],
                        borderWidth: 1
                    }
                ];
                this.chartLabels= ${데이터에 대한 라벨}
                this.chartOptions= {
                    maintainAspectRatio: false,
                    scales: {
                        y: {
                            beginAtZero: true
                        }
                    }
                }
                this.draw();

            },
            error: function (data, status, err) {
                ...
            },
            complete: function () {
                ...
            }
        });
    }
}

데이터형식에 따라 setListDataLabel 함수를 사용할 수 있음(예제참고)

CHART JS LICENSE

The MIT License (MIT)

Copyright (c) 2014-2024 Chart.js Contributors

Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:

The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.

THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
반응형
저작자표시 변경금지 (새창열림)

'프로그래밍 > WEB' 카테고리의 다른 글

[WebAppServer] 공유가 가능한 마크다운 메모장 서버  (0) 2025.06.21
[JS][코드조각] BasicModal(ModalTemplate)  (0) 2024.10.28
[JS][코드조각] BasicProgressBar  (0) 2024.10.23
[JS][코드조각] BasicGridJS  (0) 2024.10.22
[플러그인]QuickSearchWidget  (2) 2023.06.24
  1. 파일
  2. 구현기능
  3. 사용 순서
  4. ChartJS의 옵션들
  5. 문제점
  6. getData -> ajax 사용법
  7. CHART JS LICENSE
'프로그래밍/WEB' 카테고리의 다른 글
  • [WebAppServer] 공유가 가능한 마크다운 메모장 서버
  • [JS][코드조각] BasicModal(ModalTemplate)
  • [JS][코드조각] BasicProgressBar
  • [JS][코드조각] BasicGridJS
항상 빌드중
항상 빌드중
망각을 지연시키는 블로그
언제나 미완성망각을 지연시키는 블로그
항상 빌드중
언제나 미완성
항상 빌드중
전체
오늘
어제
  • 분류 전체보기 (78) N
    • Docker (4)
    • Linux | PowerShell (10)
      • [WSL][CUDA] TensorFlow 설치 과.. (4)
    • Kafka (3)
    • NiFi (13)
      • MiNiFi (4)
      • ExecuteScript (1)
    • RDBMS (3)
      • PostgreSQL (2)
      • Tibero (1)
    • NoSQL (1)
      • ElasticSearch(OpenSearch) (1)
    • 프로그래밍 (13) N
      • JAVA (1)
      • WEB (9) N
      • Python (3)
    • 잡것 (2)
      • 해킨토시 (1)
      • WSL (3)
      • VScode (3)
      • STT (3)
      • DIY (1)
    • 클러스터 구성 (4)
    • 정처기 (9)
      • 오답노트 (0)
      • 파이널 (4)
      • 벼락치기 (5)
    • 자동차 (5)
      • Android올인원 (2)
      • TOYOTA Prius XW50 (3)

블로그 메뉴

  • 홈
  • 태그
  • 방명록
  • GitHub
반응형

공지사항

인기 글

태그

  • markdownserver
  • 마크다운 메모장
  • 프리우스4
  • 프리우스4 사이드미러
  • WSL
  • 프리우스4 와이드미러
  • 프리우스 옵틱글래스
  • whisper설치과정
  • x600 usb4
  • NiFi Python
  • whisper설치 및 실행
  • deskmini usb4
  • prius4 side-view mirror
  • MiNiFi 사용방법
  • 프리우스4 옵틱글래스
  • jupiter x600 온도
  • 텐서플로우
  • nifi
  • 프리우스4 사이드미러 diy
  • 마크다운 공유

최근 댓글

최근 글

hELLO · Designed By 정상우.
항상 빌드중
[JS][코드조각] BasicChartJS
상단으로

티스토리툴바

단축키

내 블로그

내 블로그 - 관리자 홈 전환
Q
Q
새 글 쓰기
W
W

블로그 게시글

글 수정 (권한 있는 경우)
E
E
댓글 영역으로 이동
C
C

모든 영역

이 페이지의 URL 복사
S
S
맨 위로 이동
T
T
티스토리 홈 이동
H
H
단축키 안내
Shift + /
⇧ + /

* 단축키는 한글/영문 대소문자로 이용 가능하며, 티스토리 기본 도메인에서만 동작합니다.