目的・役割

選択した種目の Max Weight / Total Volume / 1RM の推移をグラフで表示する画面。期間切替(1ヶ月/3ヶ月/全期間)対応。

UI 構成

要素種類説明
カテゴリ選択Picker胸/背中/肩/腕/脚/腹筋/有酸素/その他
種目選択Pickerカテゴリで絞った種目
期間選択Picker1M / 3M / All
Max Weight グラフChartsX軸=日付, Y軸=Max重量(or 有酸素時間)
Total Volume グラフChartsX軸=日付, Y軸=Volume(or 有酸素距離)
シェアボタンToolbarShareCardPreviewView 起動

状態

状態表示内容
データなし「データがありません」
データあり(重量系)Max重量・Volumeグラフ
データあり(有酸素系)時間・距離グラフ

使用するデータモデル

StatsViewModel {
    var selectedPeriod: StatsPeriod  // .oneMonth / .threeMonths / .all
    func maxWeightData() -> [DataPoint]
    func totalVolumeData() -> [DataPoint]
}

実装メモ

関連

変更履歴

バージョン日付変更内容
1.02026-05-09初版作成