annotate Sources/InteractiveCharts/UI Previews/Sample data/GenerateSampleData.swift @ 14:edf2bfcd8d97

Reorganise structure
author Dennis Concepción Martín <66180929+denniscm190@users.noreply.github.com>
date Wed, 28 Apr 2021 19:01:40 +0200
parents InteractiveCharts/UI Previews/Sample data/GenerateSampleData.swift@a9690565726b
children
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
7
a9690565726b Add previews
Dennis Concepción Martín <66180929+denniscm190@users.noreply.github.com>
parents:
diff changeset
1 //
a9690565726b Add previews
Dennis Concepción Martín <66180929+denniscm190@users.noreply.github.com>
parents:
diff changeset
2 // GenerateSampleData.swift
a9690565726b Add previews
Dennis Concepción Martín <66180929+denniscm190@users.noreply.github.com>
parents:
diff changeset
3 // InteractiveCharts
a9690565726b Add previews
Dennis Concepción Martín <66180929+denniscm190@users.noreply.github.com>
parents:
diff changeset
4 //
a9690565726b Add previews
Dennis Concepción Martín <66180929+denniscm190@users.noreply.github.com>
parents:
diff changeset
5 // Created by Dennis Concepción Martín on 26/4/21.
a9690565726b Add previews
Dennis Concepción Martín <66180929+denniscm190@users.noreply.github.com>
parents:
diff changeset
6 //
a9690565726b Add previews
Dennis Concepción Martín <66180929+denniscm190@users.noreply.github.com>
parents:
diff changeset
7
a9690565726b Add previews
Dennis Concepción Martín <66180929+denniscm190@users.noreply.github.com>
parents:
diff changeset
8 import SwiftUI
a9690565726b Add previews
Dennis Concepción Martín <66180929+denniscm190@users.noreply.github.com>
parents:
diff changeset
9
a9690565726b Add previews
Dennis Concepción Martín <66180929+denniscm190@users.noreply.github.com>
parents:
diff changeset
10 /*
a9690565726b Add previews
Dennis Concepción Martín <66180929+denniscm190@users.noreply.github.com>
parents:
diff changeset
11 Generate sample data
a9690565726b Add previews
Dennis Concepción Martín <66180929+denniscm190@users.noreply.github.com>
parents:
diff changeset
12 */
a9690565726b Add previews
Dennis Concepción Martín <66180929+denniscm190@users.noreply.github.com>
parents:
diff changeset
13 func generateSampleData(_ n: Int) -> [Double] {
a9690565726b Add previews
Dennis Concepción Martín <66180929+denniscm190@users.noreply.github.com>
parents:
diff changeset
14 var prices = [Double]()
a9690565726b Add previews
Dennis Concepción Martín <66180929+denniscm190@users.noreply.github.com>
parents:
diff changeset
15
a9690565726b Add previews
Dennis Concepción Martín <66180929+denniscm190@users.noreply.github.com>
parents:
diff changeset
16 for _ in (1..<n) {
a9690565726b Add previews
Dennis Concepción Martín <66180929+denniscm190@users.noreply.github.com>
parents:
diff changeset
17 var lastPrice = prices.last ?? 50.0
a9690565726b Add previews
Dennis Concepción Martín <66180929+denniscm190@users.noreply.github.com>
parents:
diff changeset
18 let randomNumber = Double.random(in: 0...0.02)
a9690565726b Add previews
Dennis Concepción Martín <66180929+denniscm190@users.noreply.github.com>
parents:
diff changeset
19
a9690565726b Add previews
Dennis Concepción Martín <66180929+denniscm190@users.noreply.github.com>
parents:
diff changeset
20 if randomNumber < 0.013 {
a9690565726b Add previews
Dennis Concepción Martín <66180929+denniscm190@users.noreply.github.com>
parents:
diff changeset
21 lastPrice = lastPrice * (1 - randomNumber)
a9690565726b Add previews
Dennis Concepción Martín <66180929+denniscm190@users.noreply.github.com>
parents:
diff changeset
22 } else {
a9690565726b Add previews
Dennis Concepción Martín <66180929+denniscm190@users.noreply.github.com>
parents:
diff changeset
23 lastPrice = lastPrice * (1 + randomNumber)
a9690565726b Add previews
Dennis Concepción Martín <66180929+denniscm190@users.noreply.github.com>
parents:
diff changeset
24 }
a9690565726b Add previews
Dennis Concepción Martín <66180929+denniscm190@users.noreply.github.com>
parents:
diff changeset
25
a9690565726b Add previews
Dennis Concepción Martín <66180929+denniscm190@users.noreply.github.com>
parents:
diff changeset
26 prices.append(lastPrice)
a9690565726b Add previews
Dennis Concepción Martín <66180929+denniscm190@users.noreply.github.com>
parents:
diff changeset
27 }
a9690565726b Add previews
Dennis Concepción Martín <66180929+denniscm190@users.noreply.github.com>
parents:
diff changeset
28 return prices
a9690565726b Add previews
Dennis Concepción Martín <66180929+denniscm190@users.noreply.github.com>
parents:
diff changeset
29 }