๋ณธ๋ฌธ ๋ฐ”๋กœ๊ฐ€๊ธฐ
Vue.js

[Vue.js] Chart.js labels hover ์‹œ ๋ฐ์ดํ„ฐ(tooltip) ๋ณด์ด๊ธฐ

by Jo__y 2022. 11. 4.

Chart.js ์—์„œ ๊ธฐ๋ณธ์ ์œผ๋กœ

ํ•ด๋‹น ๋ง‰๋Œ€/์ฐจํŠธ ์œ„์— ๋งˆ์šฐ์Šค๋ฅผ ์˜ฌ๋ ค์•ผ tooltp ์ด ๋ณด์ธ๋‹ค.

๊ทธ๋Ÿฐ๋ฐ ์œ„์™€ ๊ฐ™์ด June ์€ 8000๊ฑด ์ด์ƒ์ด๊ณ  January ๋Š” 10๊ฑด์ผ๋•Œ ๋ฒ”์œ„ ์ฐจ์ด๊ฐ€ ๋„ˆ๋ฌด ์ปค์ ธ์„œ

๋ง‰๋Œ€์œ„์— ์ •ํ™•ํžˆ ๋งˆ์šฐ์Šค๋ฅผ ์˜ฌ๋ฆฌ๊ธฐ ์‰ฝ์ง€ ์•Š๋‹ค.

์ด ์ƒํƒœ๋Š” ์‚ฌ์šฉ์„ฑ์ด ๋„ˆ๋ฌด ๋–จ์–ด์ ธ์„œ

January ๋ผ๋ฒจ ์œ„์— ๋งˆ์šฐ์Šค๋ฅผ ์˜ฌ๋ ธ์„๋•Œ๋„ tooltip์ด ๋ณด์ด๋„๋ก

์ฆ‰, ๊ฐ ๋ผ๋ฒจ์œ„์— hover ๊ฐ€ ๋™์ž‘ํ•˜๋„๋ก ๋ณ€๊ฒฝํ•˜๋ ค๊ณ  ํ•œ๋‹ค.

options: {
   tooltips: {
      mode: 'index',
      intersect: false
   },
}

๊ฐ„๋‹จํ•˜๊ฒŒ options ์— ์ด๋ ‡๊ฒŒ ์ถ”๊ฐ€ํ•˜๋ฉด ๋œ๋‹ค.
chart.js Document ์— ๋‹ค์Œ๊ณผ ๊ฐ™์ด ์„ค๋ช…ํ•˜๊ณ  ์žˆ๋‹ค.

์„ค์ •์ด true ์ด๋ฉด intersect์ฒซ ๋ฒˆ์งธ ๊ต์ฐจ ํ•ญ๋ชฉ์ด ๋ฐ์ดํ„ฐ์˜ ์ธ๋ฑ์Šค๋ฅผ ๊ฒฐ์ •ํ•˜๋Š” ๋ฐ ์‚ฌ์šฉ๋ฉ๋‹ˆ๋‹ค. false์ธ ๊ฒฝ์šฐ intersectx ๋ฐฉํ–ฅ์—์„œ ๊ฐ€์žฅ ๊ฐ€๊นŒ์šด ํ•ญ๋ชฉ์ด ์ธ๋ฑ์Šค๋ฅผ ๊ฒฐ์ •ํ•˜๋Š” ๋ฐ ์‚ฌ์šฉ๋ฉ๋‹ˆ๋‹ค.

์ฆ‰ ๊ธฐ๋ณธ๊ฐ’์€ intersect ๊ฐ€ true ๋กœ ๋˜์–ด์žˆ๊ณ  false ๋กœ ๋ณ€๊ฒฝํ•ด์•ผ
๊ต์ฐจ ํ•ญ๋ชฉ์ด ์•„๋‹Œ x ์ถ• ์ „์ฒด๋ฅผ ์ธ๋ฑ์Šค๋กœ ์ธ์‹ํ•ด์„œ ๋™์ž‘ํ•œ๋‹ค.

์ด์ œ ๋ผ๋ฒจ ์œ„์— ๋งˆ์šฐ์Šค๋ฅผ ์˜ฌ๋ ค๋„ tooltip ์œผ๋กœ ๋ฐ์ดํ„ฐ๋ฅผ ์‰ฝ๊ฒŒ ํ™•์ธ ํ•  ์ˆ˜ ์žˆ๋‹ค.

์ฐธ๊ณ ๋กœ chart.js 2.x ๋ฒ„์ „์ผ๋•Œ ๋™์ž‘ํ•˜๋Š” ์ฝ”๋“œ์ด๋‹ค. ์•„๋ž˜ ์ฐธ์กฐํ•œ stackoverflow ์— ์ž์„ธํ•œ ์„ค๋ช…์ด ๋˜์–ด์žˆ๋‹ค.

์ฐธ์กฐ
Chart.js - Hover labels to display data for all data points on x-axis
Chart.js Document interactions

๋ฐ˜์‘ํ˜•

๋Œ“๊ธ€