Диаграммы Swift: как нарисовать линейную диаграмму с фиксированным градиентом независимо от данных?IOS

Программируем под IOS
Ответить
Anonymous
 Диаграммы Swift: как нарисовать линейную диаграмму с фиксированным градиентом независимо от данных?

Сообщение Anonymous »

Код линейного градиента тесно связан с этим вопросом: код линейного градиента работает хорошо, но он всегда привязан к своим данным, поэтому, например, в этом коде, показанном ниже, если у вас есть массив частот пульса от 70 до 110, нижняя частота пульса всегда серая, а верхняя всегда фиолетовая, но также и массив от 90 до 195.
Как я могу сопоставить остановки так, чтобы цвет соответствовал зоне сердечного ритма? Другими словами, частота сердечных сокращений от 70 до 110 будет показывать только, например, от синего к оранжевому?
Chart {
ForEach(smoothHeartRatesEMA(customHeartRates, decayFactor: 0.3)) { heartRate in
LineMark(
x: .value("Sample Time", heartRate.startDate, unit: .nanosecond), //changed these to .nanosecond to fix Nike Run Club bug (some how Nike Run Club gets more frequent HR samples than other apps?)
y: .value("Heart Rate", heartRate.doubleValue)
)
.lineStyle(StrokeStyle(lineWidth: 3.0))
.foregroundStyle(
.linearGradient(
stops: [
.init(color: Color.gray, location: 0.0),
.init(color: TrackerConstants.AppleFitnessBlue, location: 0.16),
.init(color: TrackerConstants.AppleFitnessYellow, location: 0.33),
.init(color: TrackerConstants.AppleFitnessOrange, location: 0.5),
.init(color: TrackerConstants.AppleFitnessRed, location: 0.66),
.init(color: TrackerConstants.AppleFitnessPurple, location: 1.0) //how do I get these to allign with a range of e.g. 170-210. I.e. if no heart rate is above 170bpm, the line is never purple?
],
startPoint: .bottom,
endPoint: .top)
)
}
}
.chartYScale(domain: 50...210)


Подробнее здесь: https://stackoverflow.com/questions/771 ... nt-of-data
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

Вернуться в «IOS»