mirror of
https://github.com/XCharts-Team/XCharts.git
synced 2026-05-16 13:30:10 +00:00
55 lines
1.5 KiB
C#
55 lines
1.5 KiB
C#
|
|
using System;
|
|||
|
|
using UnityEngine;
|
|||
|
|
using UnityEngine.UI;
|
|||
|
|
using XCharts;
|
|||
|
|
|
|||
|
|
public class Demo_Dynamic : MonoBehaviour
|
|||
|
|
{
|
|||
|
|
public int maxCacheDataNumber = 100;
|
|||
|
|
public float initDataTime = 2;
|
|||
|
|
|
|||
|
|
private CoordinateChart chart;
|
|||
|
|
private float updateTime;
|
|||
|
|
private float initTime;
|
|||
|
|
private int initCount;
|
|||
|
|
private int count;
|
|||
|
|
private bool isInited;
|
|||
|
|
private DateTime timeNow;
|
|||
|
|
|
|||
|
|
void Awake()
|
|||
|
|
{
|
|||
|
|
chart = gameObject.GetComponentInChildren<CoordinateChart>();
|
|||
|
|
chart.xAxis.ClearData();
|
|||
|
|
chart.series.ClearData();
|
|||
|
|
chart.maxCacheDataNumber = maxCacheDataNumber;
|
|||
|
|
timeNow = DateTime.Now;
|
|||
|
|
initCount = maxCacheDataNumber;
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
void Update()
|
|||
|
|
{
|
|||
|
|
if (initCount>0)
|
|||
|
|
{
|
|||
|
|
int count = (int)(maxCacheDataNumber / initDataTime * Time.deltaTime);
|
|||
|
|
for (int i = 0; i < count; i++)
|
|||
|
|
{
|
|||
|
|
timeNow = timeNow.AddSeconds(-initCount);
|
|||
|
|
chart.AddXAxisData(timeNow.ToString("hh:mm:ss"));
|
|||
|
|
chart.AddData(0, UnityEngine.Random.Range(60, 150));
|
|||
|
|
initCount--;
|
|||
|
|
if (initCount <= 0) break;
|
|||
|
|
}
|
|||
|
|
chart.RefreshChart();
|
|||
|
|
}
|
|||
|
|
updateTime += Time.deltaTime;
|
|||
|
|
if (updateTime >= 1)
|
|||
|
|
{
|
|||
|
|
updateTime = 0;
|
|||
|
|
count++;
|
|||
|
|
chart.AddXAxisData(DateTime.Now.ToString("hh:mm:ss"));
|
|||
|
|
chart.AddData(0, UnityEngine.Random.Range(60, 150));
|
|||
|
|
chart.RefreshChart();
|
|||
|
|
}
|
|||
|
|
}
|
|||
|
|
}
|