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
体験!SwiftChartsの世界
Search
shoma.kato
December 08, 2025
Programming
27
0
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
体験!SwiftChartsの世界
ZOZO.swiftで発表したスライドです!
shoma.kato
December 08, 2025
More Decks by shoma.kato
See All by shoma.kato
動画エフェクトに関する新技術の紹介
shomakato
0
30
はじめてのPDFKit.pdf
shomakato
0
240
はじめてのPDFKit
shomakato
0
55
SwiftとC++を利用した画像処理プログラミング
shomakato
0
2.5k
Other Decks in Programming
See All in Programming
AWS DevOps AgentのAzure接続機能を検証して見えた活用法/Use Cases Verified for the AWS DevOps Agent's Azure Connectivity Feature
masakiokuda
1
230
為什麼你並不需要ViewModel / No, you don't need a ViewModel
lovee
1
490
PostgreSQL 18で考えるUUID主キー
kazuhiro1982
0
470
OpenSpecのproposalにbrainstormingを持たせてみた
tigertora7571
1
220
Laravel Boostに学ぶ、AIにPHPを書かせる技術 〜OSSの実装から蒸留するエージェント制御の王道〜
kentaroutakeda
3
690
JAWS-UG横浜 #102 AWSサ終供養LT会 成仏できない AWS サービスたち 〜本日、三体供養します〜
maroon1st
0
350
VibeCodingからAgenticWorkflowへ
starfish719
0
420
ITヒヤリハットを整理してみた ~ライフサイクルと原因から考える再発防止策~
koukimiura
1
140
PHP に部分適用が来るぞ!……ところで何それ?おいしいの? #phpcon / phpcon-2026
shogogg
0
630
5分で問診!Composer セキュリティ健康診断
codmoninc
0
970
自動化したのに回らないテスト運用の壁ーAI時代の品質責任と生産性
mfunaki
0
130
Apache Hive: そしてCloud Native Lakehouseへ
okumin
1
220
Featured
See All Featured
Abbi's Birthday
coloredviolet
3
9.3k
The World Runs on Bad Software
bkeepers
PRO
72
12k
Joys of Absence: A Defence of Solitary Play
codingconduct
1
430
[Rails World 2023 - Day 1 Closing Keynote] - The Magic of Rails
eileencodes
38
2.9k
We Are The Robots
honzajavorek
0
300
Digital Projects Gone Horribly Wrong (And the UX Pros Who Still Save the Day) - Dean Schuster
uxyall
1
2.3k
Neural Spatial Audio Processing for Sound Field Analysis and Control
skoyamalab
0
400
Navigating Algorithm Shifts & AI Overviews - #SMXNext
aleyda
1
1.5k
The Spectacular Lies of Maps
axbom
PRO
1
900
Data-driven link building: lessons from a $708K investment (BrightonSEO talk)
szymonslowik
1
1.2k
How to Align SEO within the Product Triangle To Get Buy-In & Support - #RIMC
aleyda
2
1.8k
Writing Fast Ruby
sferik
630
63k
Transcript
Copyright © ZOZO, Inc. ମݧʂSwiftChartsͷੈք גࣜձࣾZOZO ϒϥϯυιϦϡʔγϣϯ։ൃຊ෦ FAANS෦ ϑϩϯτΤϯυϒϩοΫ Ճ౻
ਅ @shoma10170806
© ZOZO, Inc. 2 FAANSͷՌը໘ ɾάϥϑച্දࣔ ɾԣεΫϩʔϧ ɾදࣔ୯Ґिؒ
© ZOZO, Inc. 3 FAANSͷՌը໘ %($IBSUT άϥϑͷදࣔ 4XJGU$IBSUT ɾάϥϑച্දࣔ ɾԣεΫϩʔϧ
ɾදࣔ୯Ґिؒ
© ZOZO, Inc. 4 ɹɹSwiftChartsͱʁ άϥϑ࡞ͷͨΊͷϑϨʔϜϫʔΫ ɹɾJ04Ҏ߱ ɹɾ4XJGU6*Ͱهड़ ɹɾάϥϑɺԁάϥϑͳͲଟछྨ
ɹɾ7PJDF0WFSɺ"VEJP(SBQIͷαϙʔτ ɹɾ࣍ݩม Ҿ༻ݩIUUQTEFWFMPQFSBQQMFDPNEPDVNFOUBUJPO$IBSUT
© ZOZO, Inc. 5 ɹɹFAANSػೳͷ࣮ ̎ ɾάϥϑͷදࣔ ɾԣεΫϩʔϧରԠ ɾिؒ୯ҐͰදࣔ
© ZOZO, Inc. 6 άϥϑͷදࣔ import Charts var body: some
View { Chart(stackedBarData, id: \.id) { row in BarMark( x: .value("Day", row.date, unit: .day), y: .value("Sales", row.sales) ) .foregroundStyle(by: .value("Type", row.type)) ɹ} }
© ZOZO, Inc. 7 άϥϑͷදࣔ import Charts var body: some
View { Chart(stackedBarData, id: \.id) { row in BarMark( x: .value("Day", row.date, unit: .day), y: .value("Sales", row.sales) ) .foregroundStyle(by: .value("Type", row.type)) ɹ} } ᶃΠϯϙʔτ
© ZOZO, Inc. 8 άϥϑͷදࣔ import Charts var body: some
View { Chart(stackedBarData, id: \.id) { row in BarMark( x: .value("Day", row.date, unit: .day), y: .value("Sales", row.sales) ) .foregroundStyle(by: .value("Type", row.type)) ɹ} } ᶃΠϯϙʔτ ᶄ$IBSUσʔλಡΈࠐΈ
© ZOZO, Inc. 9 άϥϑͷදࣔ import Charts var body: some
View { Chart(stackedBarData, id: \.id) { row in BarMark( x: .value("Day", row.date, unit: .day), y: .value("Sales", row.sales) ) .foregroundStyle(by: .value("Type", row.type)) ɹ} } ᶃΠϯϙʔτ ᶄ$IBSUσʔλಡΈࠐΈ ᶅάϥϑ
© ZOZO, Inc. 10 άϥϑͷදࣔ import Charts var body: some
View { Chart(stackedBarData, id: \.id) { row in BarMark( x: .value("Day", row.date, unit: .day), y: .value("Sales", row.sales) ) .foregroundStyle(by: .value("Type", row.type)) ɹ} } ᶃΠϯϙʔτ ᶄ$IBSUσʔλಡΈࠐΈ ᶅάϥϑ ᶆ৭͚ˍੵΈ্͛
© ZOZO, Inc. 11 ԣεΫϩʔϧˍ1िؒදࣔ Chart(stackedBarData, id: \.id) { row
in ɹBarMark( x: .value("Day", row.date, unit: .day), y: .value("Sales", row.sales) ) .foregroundStyle(by: .value("Type", row.type)) } .chartScrollableAxes(.horizontal) .chartXVisibleDomain(length: 7 * 24 * 60 * 60) .chartScrollTargetBehavior(.paging) ᶃ ԣεΫϩʔϧ J04Ҏ߱
© ZOZO, Inc. 12 ԣεΫϩʔϧˍ1िؒදࣔ Chart(stackedBarData, id: \.id) { row
in ɹBarMark( x: .value("Day", row.date, unit: .day), y: .value("Sales", row.sales) ) .foregroundStyle(by: .value("Type", row.type)) } .chartScrollableAxes(.horizontal) .chartXVisibleDomain(length: 7 * 24 * 60 * 60) .chartScrollTargetBehavior(.paging) ᶃ ԣεΫϩʔϧ J04Ҏ߱ ᶄͷදࣔ
© ZOZO, Inc. 13 ԣεΫϩʔϧˍ1िؒදࣔ Chart(stackedBarData, id: \.id) { row
in ɹBarMark( x: .value("Day", row.date, unit: .day), y: .value("Sales", row.sales) ) .foregroundStyle(by: .value("Type", row.type)) } .chartScrollableAxes(.horizontal) .chartXVisibleDomain(length: 7 * 24 * 60 * 60) .chartScrollTargetBehavior(.paging) ᶃ ԣεΫϩʔϧ J04Ҏ߱ ᶄͷදࣔ ᶅिؒ୯ҐͰεΫϩʔϧ ɹʢJ04Ҏ߱ʣ
© ZOZO, Inc. 14 ɹɹએ ɾ'""/4ը໘ͷ࣮ํ๏ ɾ՝ͷղܾํ๏ ɾ%($IBSUTͱ4XJGU$IBSUTͷൺֱ
None