Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
Chart.jsで長い項目を表示するときのハマりどころ
Search
Sponsored
·
SiteGround - Reliable hosting with speed, security, and support you can count on.
→
yumechi(Motoki Hirao)
November 11, 2025
Programming
220
0
Share
Chart.jsで長い項目を表示するときのハマりどころ
ウェイブ×ゆめみ ふなよいJS/TS LT会2025/11/12
https://yumemi.connpass.com/event/368987/
で話した内容のまとめ直しです
yumechi(Motoki Hirao)
November 11, 2025
More Decks by yumechi(Motoki Hirao)
See All by yumechi(Motoki Hirao)
おれおれサービスをいっぱいつくろう
yumechi
0
72
ブログ用の記事投稿数 可視化の仕組みを作る
yumechi
0
58
2026年 エンジニアリング自己学習法
yumechi
0
190
PyCon mini Shizuoka 2026 ご紹介
yumechi
0
53
異夢同船 読んできました!
yumechi
0
310
地方カンファレンスのスタッフしてて思うこと
yumechi
0
210
2025年半忘年会ふりかえり
yumechi
0
75
業務で使える一歩進んだPython使いになるために / To become an advanced user of Python that can be used at work
yumechi
13
14k
LTの裏技
yumechi
2
1.5k
Other Decks in Programming
See All in Programming
ついに来た!本格的なマルチクラウド時代の Google Cloud
maroon1st
0
320
GNU Makeの使い方 / How to use GNU Make
kaityo256
PRO
16
5.6k
Liberating Ruby's Parser from Lexer Hacks
ydah
2
2.4k
実践CRDT
tamadeveloper
0
610
AWSコミュニティ活動は顧客のクラウド推進に効くのか / Do AWS community activities help customers adopt the cloud?
seike460
PRO
0
160
Going Multiplatform with Your Android App (Android Makers 2026)
zsmb
2
470
t *testing.T は どこからやってくるの?
otakakot
1
860
Claude Code × Gemini × Ebitengine ゲーム制作素人WebエンジニアがGoでゲームを作った話
webzawa
0
210
第3木曜LT会 #28
tinykitten
PRO
0
120
Explore CoroutineScope
tomoeng11
0
130
WebAssembly を読み込むベストプラクティス 2026年春版 / Best Practices for Loading WebAssembly (Spring 2026)
petamoriken
4
980
ハーネスエンジニアリングとは?
kinopeee
13
6.5k
Featured
See All Featured
Side Projects
sachag
455
43k
Chasing Engaging Ingredients in Design
codingconduct
0
180
Public Speaking Without Barfing On Your Shoes - THAT 2023
reverentgeek
1
380
Distributed Sagas: A Protocol for Coordinating Microservices
caitiem20
333
22k
Paper Plane (Part 1)
katiecoart
PRO
0
6.9k
<Decoding/> the Language of Devs - We Love SEO 2024
nikkihalliwell
1
200
Fight the Zombie Pattern Library - RWD Summit 2016
marcelosomers
234
17k
世界の人気アプリ100個を分析して見えたペイウォール設計の心得
akihiro_kokubo
PRO
70
39k
sira's awesome portfolio website redesign presentation
elsirapls
0
230
Build The Right Thing And Hit Your Dates
maggiecrowley
39
3.1k
SEO for Brand Visibility & Recognition
aleyda
0
4.5k
Ten Tips & Tricks for a 🌱 transition
stuffmc
0
110
Transcript
Chart.jsで長い項目を表示 するときのハマりどころ ウェイブ×ゆめみ ふなよいJS/TS LT会 2025/11/12 @__yumechi
当日スライドが 間に合わなかったので 作り直したバージョンです
X: @__yumechi misskey: @
[email protected]
自己紹介 • Motoki Hirao (X: __yumechi)
• 普段はバックエンドエンジニア • JavaScript の話でLTするのは10年ぶり…? ◦ キャリアの最初はフロントエンドエンジニアをやっていたため • 普段はゲームしてるか、読書してるか、カンファレンスにいるか、カ ンファレンスのスタッフをしています ◦ PyCon mini Shizuoka にもぜひ来てね ◦ https://shizuoka.pycon.jp/2026
X: @__yumechi misskey: @
[email protected]
概要 • Chart.js で表示を良くするためには色々大変! ◦ 実演を交えて紹介します
◦ 特に長いデータを入れた時の挙動が結構微妙だな… と思っています • ちょっと前にやったものをClaude Codeで再現して、実現しているも のになります ◦ なのでコード自体はほぼ Claude Code に書かせていて、細かめのチューニングだ け行っています
X: @__yumechi misskey: @
[email protected]
Chart.js って何? • データをグラフに変換できるライブラリ ◦ https://www.chartjs.org/
• canvas 機能を使って描画する • 棒グラフ以外にも円グラフ、チャートなどを作ることができる • 今回取り上げている通り、ちょっと癖があるので日本語環境で使う場 合は気を付けるポイントあり
コード見たい方は リポジトリへ https://github.com/yumech i/my-playground-chartjs
実例見たい方は ページを見てください https://www.yumechi. work/my-playground-c hartjs/
そのまま入れてみる
None
X: @__yumechi misskey: @
[email protected]
気になる点 • 項目名がめっちゃ切れてる ◦ 見た目としてはかなりひどい ◦
左揃えにしてある程度のところで文字列を切る戦略にすればよさそう ◦ まずはここを何とかしたい
None
None
X: @__yumechi misskey: @
[email protected]
気になる点 • だいぶもったりして見える ◦ 縦幅に対し、フォントが小さいためすごくスカスカな印象を受ける ◦
バー、カテゴリのサイズを調整する ◦ CSSでも高さを制限する ▪ 本来は項目数分でうまく計算して出せるとよいのですが、今回はデモで html, javascript というシンプルな構成なので固定値です
None
None
X: @__yumechi misskey: @
[email protected]
気になる点 • 項目名が横にすごく伸びてしまっている ◦ 読みづらさがある ◦
システムとしてみた時のだらしなさも感じる ◦ CSS による width の調整 ◦ 細かめのレイアウト調整
None
None
X: @__yumechi misskey: @
[email protected]
気になる点 • width を調整したことで左に寄りすぎて見えている ◦ html
タグで調整する(AIに聞くと Chart.js の機能でできるよ!って言ってくる が、なんかうまくできませんでした(解決策募集)) • これまで見せていなかったが、環境によってはツールチップが非常に 見ずらい ◦ ツールチップも折り返そう
None
None
None
これでかなり 一般的な基準で見ても 違和感がないレベルに なった… かも?
X: @__yumechi misskey: @
[email protected]
まとめると • Chart.js で項目をグラフ化するのはかんたんにできる • 一方で、長い項目については割と作り込みが必要
◦ 商品名 ◦ 所属名 • 表示に関しても Chart.js で提供されている機能だけでなく、CSSな どの機能を使って補助したほうが良い • どちらにしろ落とし所としては業務要件とか満たしたいものに合わせ ること
X: @__yumechi misskey: @
[email protected]
宣伝 • https://x.com/oyakata2438/status/1986061495785152711 • こちらの『ワンストップ食』に寄稿しております ◦
いろいろ合間を縫って書きました、意外とチャレンジしたことがないものを取り 上げたと思うので、興味を持っていただけると幸いです • 11/16(日) 技術書典19 『え11』にて頒布予定!
X: @__yumechi misskey: @
[email protected]
利用情報 • スライド作成: Google Slide https://www.google.com/slides/about/
• フォント: BIZ UDGothic https://fonts.google.com/specimen/BIZ+UDGothic