public void FillChart() { List <SmartChartData> exData = new List <SmartChartData>(); for (int i = 0; i < 3; i++) { SmartChartData chartData = new SmartChartData(); exData.Add(chartData); chartData.dataLineColor = new Color(0, 0, 0, 0); chartData.dataFillColor = colorsPalette[paletteIndex][i]; float x = chart.minXValue; float modifier = (chart.maxXValue - chart.minYValue) / 10; List <Vector2> tuturu = new List <Vector2>(); while (x <= chart.maxXValue) { tuturu.Add(new Vector2(x, Random.Range(chart.minYValue, chart.maxYValue))); x += modifier; chartData.data = tuturu.ToArray(); exData[i] = chartData; } } chart.chartData = exData.ToArray(); chart.UpdateChart(); paletteIndex++; if (paletteIndex >= 4) { paletteIndex = 0; } }
public void OnSliderValueChanged(float value) { if (chart.chartData.Length > 0 && chart.chartData[0].data.Length > 0) { float minVal = float.PositiveInfinity; float maxVal = float.NegativeInfinity; for (int i = 0; i < chart.chartData [0].data.Length; i++) { var val = chart.chartData [0].data [i].x; if (val < minVal) { minVal = val; } if (val > maxVal) { maxVal = val; } } float chartStart = Mathf.Lerp(minVal, maxVal - chartScale, value); chart.minXValue = chartStart; chart.maxXValue = chartStart + chartScale; chart.UpdateChart(); } }
private void DisplayDataOnChart(SmartChartData[] chartData) { chart.fillAreaUnderLine = false; //chart.DeleteMarkers(chartData[0].data.Length); DeleteMarkers(chartData[0]); chart.showMarkers = true; chart.SetupValues(true); chart.chartData[0].data = chartData[0].data; chart.UpdateChart(); }
public void UpdateSmartChart() { if (smartChart == null || !gameObject.activeInHierarchy) { return; } SmartChartData[] datas = smartChart.chartData; List <List <Vector2> > plantDatas = null; switch (chartType) { case ChartType.Biomass: plantDatas = biomass_plants; break; case ChartType.Height: plantDatas = height_plants; break; case ChartType.LeafArea: plantDatas = leafArea_plants; break; default: throw new System.Exception("Chart type error!"); } //导入图标数据 for (int i = 0; i < datas.Length; i++) { datas[i].data = i >= plantDatas.Count ? new Vector2[0] : plantDatas[i].ToArray(); if (i < envirMarkers.Count) { datas[i].envirMarker = envirMarkers[i].ToArray(); } } smartChart.chartData = datas; if (datas[0].data.Length > 0) { Vector2 maxPoint = datas[0].data[datas[0].data.Length - 1]; smartChart.maxXValue = maxPoint.x > 0 ? maxPoint.x : 1; smartChart.minXValue = 0; smartChart.maxYValue = MaxYValue(datas); smartChart.minYValue = 0; } smartChart.UpdateChart(); }
private IEnumerator GenerateSinus() { yield return(new WaitForSeconds(6)); List <Vector2> sinus = new List <Vector2>(); for (float i = -4.71f; i <= 4.71; i += 0.2f) { sinus.Add(new Vector2(i, Mathf.Sin(i))); chart.chartData[0].data = sinus.ToArray(); chart.UpdateChart(); yield return(null); } }
private void DisplayDataOnChart(SmartChartData[] chartData) { chart.chartData = chartData; chart.UpdateChart(); }