Graflume · Alpha

Pie / Donut · 기본 구현 · 공통 기능

소수 범주의 전체 대비 비중을 각도와 면적으로 보여줍니다. 필수 데이터와 차트 고유 인코딩만 사용한 출발점입니다. 아래 코드를 펼치면 그대로 실행할 수 있습니다. 기능 탭을 선택해 헤더, 도구 설명, 테마, 범례, 강조, 말풍선, 선택, 화면 제어와 접근성을 하나씩 적용한 결과와 코드를 비교하세요.

차트 계열 · 기본 차트 계열

Pie / Donut

소수 범주의 전체 대비 비중을 각도와 면적으로 보여줍니다.

Quick API
pie()
브라우저 스냅샷
graflume
mark
pie
프리셋
3

기본 구현

가장 단순한 차트

필수 데이터와 차트 고유 인코딩만 사용한 출발점입니다. 아래 코드를 펼치면 그대로 실행할 수 있습니다.

기본 예제

소수 범주의 전체 대비 비중을 각도와 면적으로 보여줍니다.

상태불러오는 중

  • minimal-implementation
Graflume.pie() Canvas 2D
조작 도움말

확대·이동은 화면을 살펴보기 위한 기능이며 데이터 축이나 값은 바꾸지 않습니다. 재생 조작이 보이는 차트에서는 원본 데이터에서 고유값이 처음 등장한 순서대로 실제 단계만 이동합니다.

Tab으로 조작부를 이동하고 Enter 또는 Space로 실행하세요. 차트에 초점이 있을 때 더하기·빼기 키로 확대·축소하고 화살표 키로 이동할 수 있습니다.

자동 배치는 둘레 후보를 비교해 차트·범례·다른 말풍선과의 겹침을 가능한 한 피합니다. 명시한 위치는 필요한 안전 보정만 적용해 유지합니다. 말풍선 글자는 상자 안에서 안전하게 자동 줄바꿈됩니다. 끊어지지 않는 긴 토큰은 정해진 줄 수 안에서 시각적으로 축약하지만, 보조 기술에는 원문 전체를 유지합니다.

불러오는 중

브라우저 API · 이식 가능한 스키마

브라우저 API

Graflume.pie()

const data = [
  {
    "category": "Organic search",
    "radius": 34,
    "value": 38
  },
  {
    "category": "Direct",
    "radius": 28,
    "value": 27
  },
  {
    "category": "Product referrals",
    "radius": 23,
    "value": 18
  },
  {
    "category": "Community",
    "radius": 18,
    "value": 11
  },
  {
    "category": "Campaigns",
    "radius": 13,
    "value": 6
  }
];

const options = {
  "axes": {
    "x": false,
    "y": false
  },
  "height": 620,
  "locale": "ko",
  "mark": {},
  "width": "container",
  "x": {
    "field": "category",
    "title": "Channel",
    "type": "ordinal"
  },
  "y": {
    "field": "value",
    "title": "Share (%)",
    "type": "quantitative"
  }
};

Graflume.pie('#chart', data, options);

이식 가능한 스키마

ChartSpec 0.1 · options

{
  "axes": {
    "x": false,
    "y": false
  },
  "height": 620,
  "locale": "ko",
  "mark": {},
  "width": "container",
  "x": {
    "field": "category",
    "title": "Channel",
    "type": "ordinal"
  },
  "y": {
    "field": "value",
    "title": "Share (%)",
    "type": "quantitative"
  }
}

공통 기능

모든 차트에서 사용하는 기능

기능 탭을 선택해 헤더, 도구 설명, 테마, 범례, 강조, 말풍선, 선택, 화면 제어와 접근성을 하나씩 적용한 결과와 코드를 비교하세요. 데이터 표식 위에 마우스를 올리세요. 지원하는 차트에서는 축을 따라 커서를 움직이면 가장 가까운 값을 볼 수 있습니다. 모든 정확한 값은 아래 표에서 확인할 수 있습니다.

헤더

차트 안에 제목과 보조 설명을 넣어 무엇을 보여주는지 먼저 밝힙니다.

상태불러오는 중

  • header
Graflume.pie() Canvas 2D
조작 도움말

확대·이동은 화면을 살펴보기 위한 기능이며 데이터 축이나 값은 바꾸지 않습니다. 재생 조작이 보이는 차트에서는 원본 데이터에서 고유값이 처음 등장한 순서대로 실제 단계만 이동합니다.

Tab으로 조작부를 이동하고 Enter 또는 Space로 실행하세요. 차트에 초점이 있을 때 더하기·빼기 키로 확대·축소하고 화살표 키로 이동할 수 있습니다.

자동 배치는 둘레 후보를 비교해 차트·범례·다른 말풍선과의 겹침을 가능한 한 피합니다. 명시한 위치는 필요한 안전 보정만 적용해 유지합니다. 말풍선 글자는 상자 안에서 안전하게 자동 줄바꿈됩니다. 끊어지지 않는 긴 토큰은 정해진 줄 수 안에서 시각적으로 축약하지만, 보조 기술에는 원문 전체를 유지합니다.

불러오는 중

브라우저 API · 이식 가능한 스키마

브라우저 API

Graflume.pie()

const data = [
  {
    "category": "Organic search",
    "radius": 34,
    "value": 38
  },
  {
    "category": "Direct",
    "radius": 28,
    "value": 27
  },
  {
    "category": "Product referrals",
    "radius": 23,
    "value": 18
  },
  {
    "category": "Community",
    "radius": 18,
    "value": 11
  },
  {
    "category": "Campaigns",
    "radius": 13,
    "value": 6
  }
];

const options = {
  "axes": {
    "x": false,
    "y": false
  },
  "height": 620,
  "locale": "ko",
  "mark": {},
  "title": {
    "subtitle": "Pie chart 모드가 실행 가능한 데이터와 옵션으로 보여주는 핵심 기능: start angle and direction · leader labels.",
    "text": "Pie / Donut"
  },
  "width": "container",
  "x": {
    "field": "category",
    "title": "Channel",
    "type": "ordinal"
  },
  "y": {
    "field": "value",
    "title": "Share (%)",
    "type": "quantitative"
  }
};

Graflume.pie('#chart', data, options);

이식 가능한 스키마

ChartSpec 0.1 · options

{
  "axes": {
    "x": false,
    "y": false
  },
  "height": 620,
  "locale": "ko",
  "mark": {},
  "title": {
    "subtitle": "Pie chart 모드가 실행 가능한 데이터와 옵션으로 보여주는 핵심 기능: start angle and direction · leader labels.",
    "text": "Pie / Donut"
  },
  "width": "container",
  "x": {
    "field": "category",
    "title": "Channel",
    "type": "ordinal"
  },
  "y": {
    "field": "value",
    "title": "Share (%)",
    "type": "quantitative"
  }
}