Mercurial > public > stock-charts
view Sources/StockCharts/LineChart/Helpers/ChartLabel.swift @ 131:ce6bfc2702fb default tip
Move to mercurial
author | Dennis C. M. <dennis@denniscm.com> |
---|---|
date | Tue, 03 Jun 2025 15:00:31 +0100 |
parents | 5057c45046c1 |
children |
line wrap: on
line source
// // ChartLabel.swift // StockCharts // // Created by Dennis Concepción Martín on 30/4/21. // import SwiftUI public struct ChartLabel: View { public var lineChartController: LineChartController @Binding var indexPosition: Int // Data point position public var body: some View { HStack { if let dates = lineChartController.dates { let date = formatStringDate(dates[indexPosition]) Text(date) .opacity(0.5) } if let hours = lineChartController.hours { let hour = hours[indexPosition] Text(hour) .opacity(0.5) } Text("\(lineChartController.prices[indexPosition], specifier: "%.2f")") .foregroundColor(lineChartController.labelColor) } } /* Take string in format yy-MM-dd (2021-01-01) and transform it to long default string format */ public func formatStringDate(_ stringDate: String) -> String { let dateFormatter = DateFormatter() dateFormatter.dateFormat = "yy-MM-dd" let date = dateFormatter.date(from: stringDate) // Format date to the final format dateFormatter.dateStyle = .long let finalDate = dateFormatter.string(from: date!) return finalDate } }