[javascript] P5.js에서 실시간 그래프를 그리는 방법을 알려주세요.
P5.js는 자바스크립트를 기반으로 한 크리에이티브 코딩 라이브러리로, 다양한 그래픽과 애니메이션을 생성할 수 있습니다. 실시간 데이터를 시각화하기 위해 P5.js를 활용하는 방법을 알아보겠습니다.
- 프로젝트 설정 및 데이터 저장
- P5.js 라이브러리를 다운로드하고 HTML 문서에 추가합니다.
- 필요한 데이터를 저장할 변수를 선언합니다.
<script src="https://cdnjs.cloudflare.com/ajax/libs/p5.js/1.4.0/p5.js"></script>
- Setup 함수 설정
- 그래프를 그릴 캔버스의 크기, 배경 색상 등 초기 설정 값을 지정합니다.
- 데이터를 초기화하고 그래프를 그리기 위한 기본 설정을 합니다.
let data = []; // 데이터를 저장할 배열
function setup() {
createCanvas(800, 600); // 그래프를 그릴 캔버스 크기 지정
background(255); // 배경 색상 설정
}
- Draw 함수 설정
- setInterval 함수를 사용하여 일정한 간격으로 데이터를 업데이트하고 그래프를 그립니다.
- 새로운 데이터를 배열에 추가하고 이전 데이터를 삭제합니다.
function draw() {
// 일정한 간격으로 데이터 업데이트
setInterval(() => {
const newData = Math.random() * height; // 새로운 데이터 생성
data.push(newData); // 데이터를 배열에 추가
// 최대 데이터 개수를 넘었을 경우 이전 데이터 삭제
if (data.length > 100) {
data.shift();
}
}, 500); // 0.5초마다 데이터 업데이트
// 그래프 그리기
background(255);
noFill();
stroke(0);
beginShape();
for (let i = 0; i < data.length; i++) {
const x = map(i, 0, data.length - 1, 0, width);
const y = map(data[i], 0, height, height, 0);
vertex(x, y);
}
endShape();
}
- HTML 파일 실행
- 웹 브라우저에서 HTML 파일을 실행하면 지정한 캔버스 크기에 맞는 실시간 그래프를 볼 수 있습니다.
- 데이터를 업데이트하는 간격이나 데이터의 개수 등을 필요에 따라 수정할 수 있습니다.
위의 코드를 참고하여 P5.js를 사용하여 실시간 그래프를 그릴 수 있습니다. 자세한 내용은 P5.js 공식 홈페이지와 예제를 확인해 보세요.
참고 자료: