사내 대시보드용 차트 부품
정유사 사내 대시보드 시스템에 올릴 차트를 화면마다 따로 만들지 않고, 여러 화면이 함께 쓰는 차트 부품으로 설계하고 개발했습니다. 대시보드는 화면마다 데이터가 다르고, 차트를 화면마다 새로 만들면 같은 종류의 차트가 화면 수만큼 생깁니다. 데이터와 표시 방식을 나눠, 어느 화면에 올려도 같은 방식으로 그려지게 했습니다. 시스템 구축 프로젝트 안에서 스스로 기획해 부품의 구조와 쓰는 법까지 정리했습니다.
화면마다 새로 만들던 차트를 하나로 묶은 공통 부품
사내 대시보드 시스템은 화면마다 보여 줄 데이터가 다르고, 그때마다 차트를 새로 만들면 같은 종류의 차트가 화면 수만큼 생깁니다. 한 화면 전용으로 만드는 대신, 여러 대시보드 화면에 공통으로 올려 쓰는 차트 부품을 목표로 잡았습니다. 부품이 하나라 고칠 곳도 하나이고, 그 차트를 쓰는 화면에 함께 반영됩니다.

데이터와 표시 방식을 따로 받는 설계
재사용 차트 부품은 그릴 데이터와 그리는 방식을 따로 받습니다. 데이터만 바꿔 넣으면 같은 부품이 다른 화면의 숫자를 그리고, 표시 방식만 바꾸면 같은 데이터를 다른 형태의 차트로 보여 줍니다. 한 화면 전용으로 만들면 이 둘이 한데 묶여 다른 화면에 옮겨 쓰기 어렵습니다.

정보가 빽빽한 업무 화면에서도 읽히는 차트
업무용 대시보드는 한 화면에 숫자와 차트가 빽빽하게 놓입니다. 차트 종류가 달라도 대시보드 데이터가 같은 방식으로 표현되게 부품의 인터페이스를 맞췄습니다. 한 화면에 담는 정보의 양, 읽기 쉬움, 화면이 반응하는 속도를 따져 차트 표현을 다듬었습니다.

구축 프로젝트 안에서 스스로 시작한 부품 표준화
차트 부품은 시스템 구축 프로젝트 안에서 스스로 기획해 진행한 사내 표준화 작업이었습니다. 부품의 구조와 쓰는 법을 정리해 두어, 이후 다른 화면과 프로젝트에서도 가져다 쓸 수 있는 바탕을 만들었습니다. 이때 쌓은 차트 · 시각화 기술은 다음 작업인 정유사 웹 지도 서비스로 이어졌습니다.

이 작업의 포인트
데이터와 표시 방식을 나눈 재사용 차트 부품
여러 대시보드 화면이 같은 방식으로 그리는 차트
스스로 기획해 정리한 부품 구조와 사용 방식
인사이트
GA4 client_storage: 'none'은 정말 쿠키를 막을까?
두 달 전 이 블로그에 「GA4 쿠키 없이 쓰기」라는 글을 썼습니다. clientstorage: 'none' 으로 쿠키 저장을 끄고, 자체 분석이 쓰던 익명 ID 를 clientid 로 넘기면 쿠키 0개로 GA4 를 쓸 수 있다는 내…
GA4 Measurement Protocol: gtag.js 없이 서버에서 이벤트 보내기
랜딩 페이지의 전송량을 파일 단위로 쪼개 보다가, 가장 큰 파일이 우리 코드가 아니라는 것을 알았습니다. Google Analytics 의 gtag.js 였고, 방문 한 번에 176KB 를 받고 있었습니다. 페이지 전체가 1,094K…
중소 제조업 AI 도입 순서: DX를 먼저 끝내야 할까?
공장을 가진 중소·중견 제조기업 16만여 곳 가운데 스마트공장을 도입한 곳은 19.5%입니다. 회사가 작을수록 이 비율은 더 떨어집니다. 중소벤처기업부가 2025년 4월에 낸 제1차 스마트제조혁신 실태조사 결과입니다. 그림: 기업 규…
Next.js loading.tsx와 404: 버튼이 화면보다 먼저 살아나게 하기
관리 화면 왼쪽 위에 사이드바를 접고 펴는 ☰ 버튼이 있습니다. 폭 하나 바꾸는 버튼인데, 대시보드에서 누르면 2초 넘게 아무 반응이 없었습니다. 레이아웃만 바꾸는 일이 왜 이렇게 오래 걸리는지부터 들여다봤습니다. Next.js 16…



