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
yumechi(Motoki Hirao)
November 11, 2025
Programming
0
210
Chart.jsで長い項目を表示するときのハマりどころ
ウェイブ×ゆめみ ふなよいJS/TS LT会2025/11/12
https://yumemi.connpass.com/event/368987/
で話した内容のまとめ直しです
yumechi(Motoki Hirao)
November 11, 2025
Tweet
Share
More Decks by yumechi(Motoki Hirao)
See All by yumechi(Motoki Hirao)
2026年 エンジニアリング自己学習法
yumechi
0
170
PyCon mini Shizuoka 2026 ご紹介
yumechi
0
46
異夢同船 読んできました!
yumechi
0
300
地方カンファレンスのスタッフしてて思うこと
yumechi
0
190
2025年半忘年会ふりかえり
yumechi
0
64
業務で使える一歩進んだPython使いになるために / To become an advanced user of Python that can be used at work
yumechi
13
14k
LTの裏技
yumechi
2
1.5k
やがてカンファレンス登壇者になる
yumechi
1
340
形式スクラムの功罪
yumechi
3
1.6k
Other Decks in Programming
See All in Programming
Windows on Ryzen and I
seosoft
0
360
How to stabilize UI tests using XCTest
akkeylab
0
140
守る「だけ」の優しいEMを抜けて、 事業とチームを両方見る視点を身につけた話
maroon8021
3
1.3k
Pythonデータ分析コトハジメinFukuoka
kanan
0
100
社内規程RAGの精度を73.3% → 100%に改善した話
oharu121
13
8.3k
今からFlash開発できるわけないじゃん、ムリムリ! (※ムリじゃなかった!?)
arkw
0
140
モックわからないマン卒業記 ~振る舞いを起点に見直した、フロントエンドテストにおけるモックの使いどころ~
tasukuwatanabe
3
410
車輪の再発明をしよう!PHP で実装して学ぶ、Web サーバーの仕組みと HTTP の正体
h1r0
2
310
技術検証結果の整理と解析をAIに任せよう!
keisukeikeda
0
130
Redox OS でのネームスペース管理と chroot の実現
isanethen
0
420
Migration to Signals, Signal Forms, Resource API, and NgRx Signal Store @Angular Days 03/2026 Munich
manfredsteyer
PRO
0
130
どんと来い、データベース信頼性エンジニアリング / Introduction to DBRE
nnaka2992
1
330
Featured
See All Featured
Optimizing for Happiness
mojombo
378
71k
VelocityConf: Rendering Performance Case Studies
addyosmani
333
24k
Become a Pro
speakerdeck
PRO
31
5.9k
Designing Powerful Visuals for Engaging Learning
tmiket
0
290
Highjacked: Video Game Concept Design
rkendrick25
PRO
1
320
Stewardship and Sustainability of Urban and Community Forests
pwiseman
0
160
Leadership Guide Workshop - DevTernity 2021
reverentgeek
1
240
Rebuilding a faster, lazier Slack
samanthasiow
85
9.4k
I Don’t Have Time: Getting Over the Fear to Launch Your Podcast
jcasabona
34
2.7k
Principles of Awesome APIs and How to Build Them.
keavy
128
17k
Reality Check: Gamification 10 Years Later
codingconduct
0
2.1k
The Illustrated Children's Guide to Kubernetes
chrisshort
51
52k
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