디자인킷 · 반폭
반폭 · 와플 10×10 비율
D-반폭-와플비율
언제 쓰는가
100명 중 몇 명, 100건 중 몇 건처럼 비율 하나를 사람이 세어 볼 수 있게 절반 칸에. 값 1개(1~99%). 오른쪽에 큰 수치와 설명 두 줄, 근거 값 2개. 값 바꾸는 법: 네모 100개가 왼쪽 위부터 가로로 놓인다(한 줄 10개). 비율이 N% 이면 앞에서 N개의 class 를 "f-a", 나머지를 "f-g1" 로 바꾼다. 오른쪽 p.big 숫자, 설명 한 문장(26자 이내), dl 의 근거 값 2개 교체.
참고
Financial Times Visual Vocabulary(https://github.com/Financial-Times/chart-doctor/tree/main/visual-vocabulary)의 Part-to-whole 분류(gridplot)와 Datawrapper Academy(https://academy.datawrapper.de)의 비율을 낱개로 보이는 방식 안내를 참고. 직접 제작.
조각
<div class="dk dkh dkh-g-waffle"><div class="dk-card"><p class="dk-lb">구매 전 후기 검색 경험 비율</p> <div class="row"><div class="cv"><svg width="100%" viewBox="0 0 196 196" preserveAspectRatio="xMidYMid meet" role="img"> <rect x="0" y="0" width="16" height="16" rx="3" class="f-a"/><rect x="20" y="0" width="16" height="16" rx="3" class="f-a"/><rect x="40" y="0" width="16" height="16" rx="3" class="f-a"/><rect x="60" y="0" width="16" height="16" rx="3" class="f-a"/><rect x="80" y="0" width="16" height="16" rx="3" class="f-a"/><rect x="100" y="0" width="16" height="16" rx="3" class="f-a"/><rect x="120" y="0" width="16" height="16" rx="3" class="f-a"/><rect x="140" y="0" width="16" height="16" rx="3" class="f-a"/><rect x="160" y="0" width="16" height="16" rx="3" class="f-a"/><rect x="180" y="0" width="16" height="16" rx="3" class="f-a"/><rect x="0" y="20" width="16" height="16" rx="3" class="f-a"/><rect x="20" y="20" width="16" height="16" rx="3" class="f-a"/><rect x="40" y="20" width="16" height="16" rx="3" class="f-a"/><rect x="60" y="20" width="16" height="16" rx="3" class="f-a"/><rect x="80" y="20" width="16" height="16" rx="3" class="f-a"/><rect x="100" y="20" width="16" height="16" rx="3" class="f-a"/><rect x="120" y="20" width="16" height="16" rx="3" class="f-a"/><rect x="140" y="20" width="16" height="16" rx="3" class="f-a"/><rect x="160" y="20" width="16" height="16" rx="3" class="f-a"/><rect x="180" y="20" width="16" height="16" rx="3" class="f-a"/><rect x="0" y="40" width="16" height="16" rx="3" class="f-a"/><rect x="20" y="40" width="16" height="16" rx="3" class="f-a"/><rect x="40" y="40" width="16" height="16" rx="3" class="f-a"/><rect x="60" y="40" width="16" height="16" rx="3" class="f-a"/><rect x="80" y="40" width="16" height="16" rx="3" class="f-a"/><rect x="100" y="40" width="16" height="16" rx="3" class="f-a"/><rect x="120" y="40" width="16" height="16" rx="3" class="f-a"/><rect x="140" y="40" width="16" height="16" rx="3" class="f-a"/><rect x="160" y="40" width="16" height="16" rx="3" class="f-a"/><rect x="180" y="40" width="16" height="16" rx="3" class="f-a"/><rect x="0" y="60" width="16" height="16" rx="3" class="f-a"/><rect x="20" y="60" width="16" height="16" rx="3" class="f-a"/><rect x="40" y="60" width="16" height="16" rx="3" class="f-a"/><rect x="60" y="60" width="16" height="16" rx="3" class="f-a"/><rect x="80" y="60" width="16" height="16" rx="3" class="f-a"/><rect x="100" y="60" width="16" height="16" rx="3" class="f-a"/><rect x="120" y="60" width="16" height="16" rx="3" class="f-a"/><rect x="140" y="60" width="16" height="16" rx="3" class="f-g1"/><rect x="160" y="60" width="16" height="16" rx="3" class="f-g1"/><rect x="180" y="60" width="16" height="16" rx="3" class="f-g1"/><rect x="0" y="80" width="16" height="16" rx="3" class="f-g1"/><rect x="20" y="80" width="16" height="16" rx="3" class="f-g1"/><rect x="40" y="80" width="16" height="16" rx="3" class="f-g1"/><rect x="60" y="80" width="16" height="16" rx="3" class="f-g1"/><rect x="80" y="80" width="16" height="16" rx="3" class="f-g1"/><rect x="100" y="80" width="16" height="16" rx="3" class="f-g1"/><rect x="120" y="80" width="16" height="16" rx="3" class="f-g1"/><rect x="140" y="80" width="16" height="16" rx="3" class="f-g1"/><rect x="160" y="80" width="16" height="16" rx="3" class="f-g1"/><rect x="180" y="80" width="16" height="16" rx="3" class="f-g1"/><rect x="0" y="100" width="16" height="16" rx="3" class="f-g1"/><rect x="20" y="100" width="16" height="16" rx="3" class="f-g1"/><rect x="40" y="100" width="16" height="16" rx="3" class="f-g1"/><rect x="60" y="100" width="16" height="16" rx="3" class="f-g1"/><rect x="80" y="100" width="16" height="16" rx="3" class="f-g1"/><rect x="100" y="100" width="16" height="16" rx="3" class="f-g1"/><rect x="120" y="100" width="16" height="16" rx="3" class="f-g1"/><rect x="140" y="100" width="16" height="16" rx="3" class="f-g1"/><rect x="160" y="100" width="16" height="16" rx="3" class="f-g1"/><rect x="180" y="100" width="16" height="16" rx="3" class="f-g1"/><rect x="0" y="120" width="16" height="16" rx="3" class="f-g1"/><rect x="20" y="120" width="16" height="16" rx="3" class="f-g1"/><rect x="40" y="120" width="16" height="16" rx="3" class="f-g1"/><rect x="60" y="120" width="16" height="16" rx="3" class="f-g1"/><rect x="80" y="120" width="16" height="16" rx="3" class="f-g1"/><rect x="100" y="120" width="16" height="16" rx="3" class="f-g1"/><rect x="120" y="120" width="16" height="16" rx="3" class="f-g1"/><rect x="140" y="120" width="16" height="16" rx="3" class="f-g1"/><rect x="160" y="120" width="16" height="16" rx="3" class="f-g1"/><rect x="180" y="120" width="16" height="16" rx="3" class="f-g1"/><rect x="0" y="140" width="16" height="16" rx="3" class="f-g1"/><rect x="20" y="140" width="16" height="16" rx="3" class="f-g1"/><rect x="40" y="140" width="16" height="16" rx="3" class="f-g1"/><rect x="60" y="140" width="16" height="16" rx="3" class="f-g1"/><rect x="80" y="140" width="16" height="16" rx="3" class="f-g1"/><rect x="100" y="140" width="16" height="16" rx="3" class="f-g1"/><rect x="120" y="140" width="16" height="16" rx="3" class="f-g1"/><rect x="140" y="140" width="16" height="16" rx="3" class="f-g1"/><rect x="160" y="140" width="16" height="16" rx="3" class="f-g1"/><rect x="180" y="140" width="16" height="16" rx="3" class="f-g1"/><rect x="0" y="160" width="16" height="16" rx="3" class="f-g1"/><rect x="20" y="160" width="16" height="16" rx="3" class="f-g1"/><rect x="40" y="160" width="16" height="16" rx="3" class="f-g1"/><rect x="60" y="160" width="16" height="16" rx="3" class="f-g1"/><rect x="80" y="160" width="16" height="16" rx="3" class="f-g1"/><rect x="100" y="160" width="16" height="16" rx="3" class="f-g1"/><rect x="120" y="160" width="16" height="16" rx="3" class="f-g1"/><rect x="140" y="160" width="16" height="16" rx="3" class="f-g1"/><rect x="160" y="160" width="16" height="16" rx="3" class="f-g1"/><rect x="180" y="160" width="16" height="16" rx="3" class="f-g1"/><rect x="0" y="180" width="16" height="16" rx="3" class="f-g1"/><rect x="20" y="180" width="16" height="16" rx="3" class="f-g1"/><rect x="40" y="180" width="16" height="16" rx="3" class="f-g1"/><rect x="60" y="180" width="16" height="16" rx="3" class="f-g1"/><rect x="80" y="180" width="16" height="16" rx="3" class="f-g1"/><rect x="100" y="180" width="16" height="16" rx="3" class="f-g1"/><rect x="120" y="180" width="16" height="16" rx="3" class="f-g1"/><rect x="140" y="180" width="16" height="16" rx="3" class="f-g1"/><rect x="160" y="180" width="16" height="16" rx="3" class="f-g1"/><rect x="180" y="180" width="16" height="16" rx="3" class="f-g1"/> </svg></div><div class="tx"><p class="big num">37<span>%</span></p><p class="d">구매자 100명 중 37명이 결제 전에 후기를 검색</p><dl><div><dt>응답자</dt><dd class="num">1,000명</dd></div><div><dt>검색 경험</dt><dd class="num">370명</dd></div></dl></div></div> <p class="nt">예시 값 · 실제 집계 값과 기간으로 교체</p></div></div>
스타일
.dkh-g-waffle .dk-card{display:flex;flex-direction:column;padding:20px 26px 18px}
.dkh-g-waffle .dk-lb{flex:none;margin:0 0 10px}
.dkh-g-waffle .nt{flex:none;font-size:var(--f-cap);color:var(--mu);margin:8px 0 0}
.dkh-g-waffle .cv{flex:1;min-height:0;position:relative}
.dkh-g-waffle .cv svg{position:absolute;left:0;top:0;width:100%;height:100%;display:block}
.dkh-g-waffle svg text{font-family:inherit;font-size:13px;fill:var(--mu);font-variant-numeric:tabular-nums}
.dkh-g-waffle svg .k{fill:var(--ink2)}
.dkh-g-waffle svg .v{fill:var(--ink);font-weight:600}
.dkh-g-waffle svg .va{fill:var(--ac);font-weight:700}
.dkh-g-waffle svg .on{fill:var(--card);font-weight:600}
.dkh-g-waffle svg .t14{font-size:14px}
.dkh-g-waffle svg .f-a{fill:var(--ac)}
.dkh-g-waffle svg .f-w{fill:var(--acw)}
.dkh-g-waffle svg .f-s{fill:var(--soft)}
.dkh-g-waffle svg .f-c{fill:var(--card)}
.dkh-g-waffle svg .f-g1{fill:var(--g1)}
.dkh-g-waffle svg .f-g2{fill:var(--g2)}
.dkh-g-waffle svg .f-g3{fill:var(--g3)}
.dkh-g-waffle svg .f-g4{fill:var(--g4)}
.dkh-g-waffle svg .ax{stroke:var(--line2);stroke-width:1;fill:none}
.dkh-g-waffle svg .gr{stroke:var(--line);stroke-width:1;fill:none}
.dkh-g-waffle .row{flex:1;min-height:0;display:flex;gap:24px;align-items:stretch}
.dkh-g-waffle .row .cv{flex:0 0 46%}
.dkh-g-waffle .tx{flex:1;min-width:0;display:flex;flex-direction:column;justify-content:center}
.dkh-g-waffle .big{margin:0;font-size:var(--f-big);font-weight:700;line-height:1;letter-spacing:-2px;color:var(--ac)}
.dkh-g-waffle .big span{font-size:var(--f-xl);font-weight:600;letter-spacing:0;margin-left:2px}
.dkh-g-waffle .d{margin:10px 0 0;font-size:var(--f-sm);line-height:1.5;color:var(--ink2)}
.dkh-g-waffle dl{margin:14px 0 0;padding:10px 0 0;border-top:1px solid var(--line);display:flex;gap:16px}
.dkh-g-waffle dl div{flex:1;min-width:0}
.dkh-g-waffle dt{font-size:var(--f-cap);color:var(--mu)}
.dkh-g-waffle dd{margin:0;font-size:var(--f-body);font-weight:700;color:var(--ink)}