@@ -3,30 +3,60 @@ import Charts
33import Shapes
44
55struct ChartsView : View {
6- @State var data1 : [ CGFloat ] = ( 0 ... 20 ) . map { _ in . random( in: 0.1 ... 1.0 ) }
7- @State var data2 : [ CGFloat ] = ( 0 ... 50 ) . map { _ in . random( in: 0.1 ... 1.0 ) }
8- @State var data3 : [ CGFloat ] = ( 0 ... 100 ) . map { _ in . random( in: 0.1 ... 1.0 ) }
6+ @State var data1 : [ CGFloat ] = ( 2010 ... 2020 ) . map { _ in . random( in: 0.1 ... 1.0 ) }
7+ @State var data2 : [ CGFloat ] = ( 0 ..< 50 ) . map { _ in . random( in: 0.1 ... 1.0 ) }
8+ @State var data3 : [ CGFloat ] = ( 0 ..< 100 ) . map { _ in . random( in: 0.1 ... 1.0 ) }
99
10- @State var data4 : [ CGFloat ] = ( 0 ... 100 ) . map { _ in . random( in: 0.4 ... 1.0 ) }
11- @State var data5 : [ CGFloat ] = ( 0 ... 100 ) . map { _ in . random( in: 0.1 ... 0.3 ) }
12- @State var data6 : [ CGFloat ] = ( 0 ... 100 ) . map { _ in . random( in: 0.3 ... 0.4 ) }
10+ @State var data4 : [ CGFloat ] = ( 0 ..< 100 ) . map { _ in . random( in: 0.4 ... 1.0 ) }
11+ @State var data5 : [ CGFloat ] = ( 0 ..< 100 ) . map { _ in . random( in: 0.1 ... 0.3 ) }
12+ @State var data6 : [ CGFloat ] = ( 0 ..< 100 ) . map { _ in . random( in: 0.3 ... 0.4 ) }
1313
1414 @State var matrixData1 : [ [ CGFloat ] ] = ( 0 ..< 20 ) . map { _ in ( 0 ..< 3 ) . map { _ in CGFloat . random ( in: 0.00 ... 0.33 ) } }
1515
1616 var body : some View {
1717 ScrollView {
18- Chart ( data: data1)
19- . chartStyle (
20- LineChartStyle ( . quadCurve, lineColor: . blue, lineWidth: 5 )
21- )
22- . padding ( )
23- . background (
24- GridPattern ( horizontalLines: data1. count, verticalLines: 20 )
25- . inset ( by: 1 )
26- . stroke ( Color . gray. opacity ( 0.1 ) , style: . init( lineWidth: 2 , lineCap: . round) )
27- )
28- . frame ( height: 300 )
29- . padding ( )
18+ HStack {
19+ VStack {
20+ AxisLabels ( . vertical, data: 1 ... 10 , id: \. self) {
21+ Text ( " \( 110 - $0 * 10 ) " )
22+ . fontWeight ( . bold)
23+ . font ( Font . system ( size: 8 ) )
24+ . foregroundColor ( . secondary)
25+ }
26+ . frame ( width: 20 )
27+
28+ Rectangle ( ) . foregroundColor ( . clear) . frame ( width: 20 , height: 20 )
29+ }
30+
31+
32+ VStack {
33+ Chart ( data: data1)
34+ . chartStyle (
35+ LineChartStyle ( . quadCurve, lineColor: . blue, lineWidth: 5 )
36+ )
37+ . padding ( )
38+ . background (
39+ GridPattern ( horizontalLines: 10 + 1 , verticalLines: data1. count + 1 )
40+ . inset ( by: 1 )
41+ . stroke ( Color . gray. opacity ( 0.1 ) , style: . init( lineWidth: 2 , lineCap: . round) )
42+ )
43+ . frame ( height: 300 )
44+
45+
46+ AxisLabels ( . horizontal, data: 2010 ... 2020 , id: \. self) {
47+ Text ( " \( $0) " . replacingOccurrences ( of: " , " , with: " " ) )
48+ . fontWeight ( . bold)
49+ . font ( Font . system ( size: 8 ) )
50+ . foregroundColor ( . secondary)
51+ }
52+ . frame ( height: 20 )
53+ . padding ( . horizontal, 1 )
54+ }
55+ . layoutPriority ( 1 )
56+ }
57+
58+ . padding ( )
59+
3060
3161 Chart ( data: data2)
3262 . chartStyle (
0 commit comments