forked from spr1ngd/UnityCodes
-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathLineChartGraphExample.cs
More file actions
127 lines (121 loc) · 3.92 KB
/
Copy pathLineChartGraphExample.cs
File metadata and controls
127 lines (121 loc) · 3.92 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
/*=========================================
* Author: springDong
* Description: SpringGUI.LineChartGraph example.
==========================================*/
using System.Collections.Generic;
using SpringGUI;
using UnityEngine;
public class LineChartGraphExample : MonoBehaviour
{
public class TestData
{
public float xValue { get; set; }
public float yValue { get; set; }
public TestData( float x ,float y )
{
xValue = x;
yValue = y;
}
}
public LineChart LineChart = null;
public void Awake()
{
var data1 = new List<TestData>()
{
new TestData(0.0f,0.0f),
new TestData(0.1f,0.9f),
new TestData(0.2f,0.2f),
new TestData(0.3f,0.8f),
new TestData(0.4f,0.3f),
new TestData(0.5f,0.7f),
new TestData(0.6f,0.4f),
new TestData(0.7f,0.6f),
new TestData(0.8f,0.5f),
new TestData(0.9f,0.2f),
new TestData(1f,0.5f),
};
var data2 = new List<TestData>()
{
new TestData(0.0f,0.7f),
new TestData(0.1f,0.1f),
new TestData(0.2f,0.5f),
new TestData(0.3f,0.6f),
new TestData(0.4f,0.7f),
new TestData(0.5f,0.2f),
new TestData(0.6f,0.72f),
new TestData(0.7f,0.24f),
new TestData(0.8f,0.52f),
new TestData(0.9f,0.1f),
new TestData(1f,0.0f),
};
LineChart.Inject<TestData>(data1);
LineChart.Inject<TestData>(data2);
LineChart.ShowUnit();
}
public void OnGUI()
{
if (GUILayout.Button("Reset"))
{
LineChart.Refresh();
}
GUILayout.Label("Static Data");
if (GUILayout.Button("Mode1"))
{
LineChart.lineChartType = LineChart.LineChartType.LineChart1;
LineChart.Refresh();
}
if (GUILayout.Button("Mode2"))
{
LineChart.lineChartType = LineChart.LineChartType.LineChart2;
LineChart.Refresh();
}
if (GUILayout.Button("Mode3"))
{
LineChart.lineChartType = LineChart.LineChartType.LineChart3;
LineChart.Refresh();
}
if (GUILayout.Button("Delete one line "))
{
LineChart.RemoveLine(1);
}
GUILayout.Label("Dynamic Data");
GUILayout.Space(5);
if (GUILayout.Button("Replace all data"))
{
LineChart.Replace(1 , new List<TestData>()
{
new TestData(0.0f,0.11f),
new TestData(0.1f,0.1f),
new TestData(0.2f,0.27f),
new TestData(0.3f,0.16f),
new TestData(0.4f,0.1f),
new TestData(0.5f,0.14f),
new TestData(0.6f,0.52f),
new TestData(0.7f,0.2f),
new TestData(0.8f,0.11f),
new TestData(0.9f,0.8f),
new TestData(1f,0.18f),
});
}
GUILayout.Space(5);
if ( GUILayout.Button(" Dynamic stream data ") )
{
LineChart.InjectVertexStream(1 , new List<TestData>()
{
new TestData(0.0f,0.9f),
new TestData(0.0f,0.2f),
new TestData(0.0f,0.4f),
new TestData(0.0f,0.5f),
new TestData(0.0f,0.6f),
new TestData(0.0f,0.1f),
new TestData(0.0f,0.23f),
new TestData(0.0f,0.15f),
new TestData(0.0f,0.61f),
new TestData(0.0f,0.1f),
new TestData(0.0f,0.5f),
new TestData(0.0f,0.1f),
});
}
}
}