Пример #1
0
    private void Awake()
    {
        instance          = this;
        graphContainer    = transform.Find("graphContainer").GetComponent <RectTransform>();
        labelTemplateX    = graphContainer.Find("labelTemplateX").GetComponent <RectTransform>();
        lableTemplateY    = graphContainer.Find("labelTemplateY").GetComponent <RectTransform>();
        dashTemplateX     = graphContainer.Find("dashTemplateX").GetComponent <RectTransform>();
        dashTemplateY     = graphContainer.Find("dashTemplateY").GetComponent <RectTransform>();
        tooltipGameObject = graphContainer.Find("ToolTip").gameObject;

        gameObjectList        = new List <GameObject>();
        yLabelList            = new List <RectTransform>();
        graphVisualObjectList = new List <IGraphVisualObject>();

        //List<int> valueList = new List<int>() { 5, 98, 56, 45, 30, 22, 17, 15, 13, 17, 25, 37, 40, 36, 33,60,54,22,67,98,34,25,2,7,87 };

        IGraphVisual lineGraphVisual = new LineGraphVisual(graphContainer, dot, Color.green, Color.white);
        IGraphVisual barGraphVisual  = new BarChartVisual(graphContainer, Color.green, 0.8f);

        transform.Find("barGraphButton").GetComponent <Button>().onClick.AddListener(() => SetGraphVisual(barGraphVisual));
        transform.Find("LineGraphButton").GetComponent <Button>().onClick.AddListener(() => SetGraphVisual(lineGraphVisual));
        transform.Find("increaseVisibleButton").GetComponent <Button>().onClick.AddListener(() => IncreaseGraphVisual());
        transform.Find("decreaseVisibleButton").GetComponent <Button>().onClick.AddListener(() => DecreaseGraphVisual());
        transform.Find("DollarYlabelButton").GetComponent <Button>().onClick.AddListener(() => SetGetAxisLabelY((float _f) => "$" + Mathf.RoundToInt(_f)));
        transform.Find("EuroYlabelButton").GetComponent <Button>().onClick.AddListener(() => SetGetAxisLabelY((float _f) => "€" + Mathf.RoundToInt(_f / 1.18f)));

        HideToolTip();
        //ShowGraph(valueList, barGraphVisual, -1, (int _i) => "Day" + (_i + 1), (float _f) => "$" + Mathf.RoundToInt(_f));
    }
 private void Awake()
 {
     instance        = this;
     graphVisuals[0] = new LineGraphVisual(graphContainer, dotSprite, Color.blue, Color.gray);
     graphVisuals[1] = new BarGraphVisual(graphContainer, Color.blue, 0.7f);
     toolTipTxt      = toolTip.GetComponentInChildren <Text>();
     toolTipRect     = toolTip.GetComponent <RectTransform>();
 }
Пример #3
0
    IEnumerator ChangeData()
    {
        IGraphVisual lineGraphVisual = new LineGraphVisual(graphContainer, dotSprite, new Color32(85, 165, 255, 255), new Color32(85, 165, 255, 100));
        IGraphVisual barChartVisual  = new BarChartVisual(graphContainer, new Color32(85, 165, 255, 255), .8f);

        WWWForm form = new WWWForm();

        string starttime = startRange.text;
        string endtime   = endRange.text;

        form.AddField("starttime", starttime);
        form.AddField("endtime", endtime);

        WWW getNewTimes = new WWW("http://localhost:81/percentsdata/getNewTimes.php", form);

        yield return(getNewTimes);

        string[]   newtimes = getNewTimes.text.Split(';');
        List <int> newList  = new List <int>();

        int numrows = int.Parse(newtimes[0]);

        bool skipFirst = false;

        foreach (string str in newtimes)
        {
            if (skipFirst)
            {
                int mins = (Int32.Parse(str)) / 60 / 60;
                newList.Add(mins);
            }
            skipFirst = true;
        }

        WWW getNewTags = new WWW("http://localhost:81/percentsdata/getNewTags.php", form);

        yield return(getNewTags);

        //string tagsDataString = tagsData.text;
        string[] nameArray = getNewTags.text.Split(';');
        int      num       = Int32.Parse(nameArray[0]);

        string[] names = new string[num];
        Array.Copy(nameArray, 1, names, 0, num);

        HideSearchPanel();
        ShowGraph(newList, barChartVisual, -1, (int _i) => names[(_i)], (float _f) => Mathf.RoundToInt(_f) + " hrs");

        //Debug.Log("text!!" + starttime);
        string DisplayInfo = starttime + " to " + endtime;

        UpdateDisplayPanel(DisplayInfo);
    }
    private void Start()
    {
        // Set Up graphVisual objects to use by Show Graph Method.
        IGraphVisual lineChartVisual = new LineGraphVisual(graphContainer, graphDotSprite, Color.white);

        lineGraphVisual = lineChartVisual;

        IGraphVisual barChartVisual = new BarChartVisual(graphContainer, colourOfBars);

        barGraphVisual = barChartVisual;

        graphGameObjectList = new List <GameObject>();
    }
Пример #5
0
    private void PlotInvestments()
    {
        plot2.Clear();
        plot3.Clear();
        index = 0;
        Finances finances = GameController.instance.player.finances;

        if (finances.investments.Count == 0 || finances.dates.Count == 0)
        {
            return;
        }
        LineGraphVisual lineVisual     = new LineGraphVisual(containers[1], dotSprite, 12, true, Color.green, Color.white);
        LineGraphVisual bankruptVisual = new LineGraphVisual(containers[1], dotSprite, 12, false, Color.red, Color.red);
        List <float>    extrems        = plot2.ShowPlot(finances.investments, lineVisual, 12, containers[1],
                                                        0, 0, (int i) => finances.dates[i].month.ToString().Substring(0, 3),
                                                        (float f) => String.Format("{0:n0} $", Mathf.RoundToInt(f)));
        List <int> bankruptStates = new List <int>();

        for (int i = 0; i < 12; i++)
        {
            bankruptStates.Add(finances.bankruptState);
        }
        plot2.ShowPlot(bankruptStates, bankruptVisual, -1, containers[1], extrems[0], extrems[1], displayGrid: false);

        // build plot in years
        LineGraphVisual yearLineVisual = new LineGraphVisual(containers[2], dotSprite, 12, true, Color.yellow, Color.green);
        List <int>      yearData       = new List <int>();
        List <int>      years          = new List <int>();

        while (index < finances.investments.Count)
        {
            int sum = 0;
            for (int i = index; i < index + 12; i++)
            {
                if (i >= finances.investments.Count)
                {
                    break;
                }
                sum += finances.investments[i];
            }
            sum /= 12; yearData.Add(sum);
            years.Add(finances.dates[index].year);
            index += 12;
        }


        plot3.ShowPlot(yearData, yearLineVisual, 12, containers[2], 0, 0,
                       (int i) => years[i].ToString(),
                       (float f) => String.Format("{0:n0} $", Mathf.RoundToInt(f)));
    }
Пример #6
0
    public void SetGraphVisual(string graphVisual)
    {
        IGraphVisual lineGraphVisual = new LineGraphVisual(graphContainer, dot, Color.green, Color.white);
        IGraphVisual barGraphVisual  = new BarChartVisual(graphContainer, Color.green, 0.8f);

        if (graphVisual == "barGraphVisual")
        {
            ShowGraph(this.valueList, barGraphVisual, this.maxVisibleValueAmount, this.getAxisLabelX, this.getAxisLabelY);
        }
        else
        {
            ShowGraph(this.valueList, lineGraphVisual, this.maxVisibleValueAmount, this.getAxisLabelX, this.getAxisLabelY);
        }
    }
Пример #7
0
    private void Awake()
    {
        instance = this;
        // Grab base objects references
        graphContainer = transform.Find("graphContainer").GetComponent <RectTransform>();
        labelTemplateY = graphContainer.Find("labelTemplateY").GetComponent <RectTransform>();

        startYScaleAtZero     = true;
        gameObjectList        = new List <GameObject>();
        yLabelList            = new List <RectTransform>();
        graphVisualObjectList = new List <IGraphVisualObject>();

        IGraphVisual lineGraphVisual = new LineGraphVisual(graphContainer, dotSprite, Color.green, new Color(1, 1, 1, .5f));



        // Set up base values
        List <int> valueList = new List <int>()
        {
            0, 0
        };

        ShowGraph(valueList, lineGraphVisual, -1, (int _i) => "Day " + (_i + 1), (float _f) => Mathf.RoundToInt(_f).ToString());

        /*
         * // Automatically modify graph values and visual
         * bool useBarChart = true;
         * FunctionPeriodic.Create(() => {
         *  for (int i = 0; i < valueList.Count; i++) {
         *      valueList[i] = Mathf.RoundToInt(valueList[i] * UnityEngine.Random.Range(0.8f, 1.2f));
         *      if (valueList[i] < 0) valueList[i] = 0;
         *  }
         *  if (useBarChart) {
         *      ShowGraph(valueList, barChartVisual, -1, (int _i) => "Day " + (_i + 1), (float _f) => "$" + Mathf.RoundToInt(_f));
         *  } else {
         *      ShowGraph(valueList, lineGraphVisual, -1, (int _i) => "Day " + (_i + 1), (float _f) => "$" + Mathf.RoundToInt(_f));
         *  }
         *  useBarChart = !useBarChart;
         * }, .5f);
         * //*/

        int index = 0;

        FunctionPeriodic.Create(() => {
            //int index = UnityEngine.Random.Range(0, valueList.Count);
            //UpdateValue(index, valueList[index] + UnityEngine.Random.Range(1, 3));
            addValue(GameLogic.instance.infectedCount);
            ShowGraph(valueList, lineGraphVisual, valueList.Count, (int _i) => "Day " + (_i + 1), (float _f) => Mathf.RoundToInt(_f).ToString());
        }, 10f);
    }
Пример #8
0
    private void HandleReferences(out IGraphVisual lineGraphVisual, out IGraphVisual barChartVisual)
    {
        statisticsManager = GameObject.FindObjectOfType <StatisticsManager> ();
        // Grab base objects references
        graphContainer    = transform.Find("graphContainer").GetComponent <RectTransform> ();
        labelTemplateX    = graphContainer.Find("labelTemplateX").GetComponent <RectTransform> ();
        labelTemplateY    = graphContainer.Find("labelTemplateY").GetComponent <RectTransform> ();
        dashContainer     = graphContainer.Find("dashContainer").GetComponent <RectTransform> ();
        dashTemplateX     = dashContainer.Find("dashTemplateX").GetComponent <RectTransform> ();
        dashTemplateY     = dashContainer.Find("dashTemplateY").GetComponent <RectTransform> ();
        tooltipGameObject = graphContainer.Find("tooltip").gameObject;

        startYScaleAtZero     = true;
        gameObjectList        = new List <GameObject> ();
        yLabelList            = new List <RectTransform> ();
        graphVisualObjectList = new List <IGraphVisualObject> ();

        lineGraphVisual = new LineGraphVisual(graphContainer, dotSprite, Color.green, new Color(1, 1, 1, .5f));
        barChartVisual  = new BarChartVisual(graphContainer, Color.white, .8f);
    }
Пример #9
0
    private void Awake()
    {
        instace           = this;
        graphContainer    = transform.Find("graphContainer").GetComponent <RectTransform>();
        labelTemplateX    = graphContainer.Find("xAxis").GetComponent <RectTransform>();
        labelTemplateY    = graphContainer.Find("yAxis").GetComponent <RectTransform>();
        dashTemplateX     = graphContainer.Find("xDash").GetComponent <RectTransform>();
        dashTemplateY     = graphContainer.Find("yDash").GetComponent <RectTransform>();
        tooltipGameObject = graphContainer.Find("tooltip").gameObject;

        gameObjectList        = new List <GameObject>();
        graphVisualObjectlist = new List <IGraphVisualObject>();


        IGraphVisual lineGraphVisual = new LineGraphVisual(graphContainer, dotSprite, Color.white, new Color(1, 1, 1, .5f));
        IGraphVisual barChartVisual  = new BarChartVisual(graphContainer, Color.white, .8f);

        transform.Find("barChartBtn").GetComponent <Button_UI>().ClickFunc  = () => { SetGraphVisual(barChartVisual); };
        transform.Find("lineGraphBtn").GetComponent <Button_UI>().ClickFunc = () => { SetGraphVisual(lineGraphVisual); };


        // Level Selection process determined by the Scene indexer
        switch (SceneManager.GetActiveScene().buildIndex)
        {
        case (2): valueList = new List <int>()
        {
                3, 4, 6, 9, 8
        };                     break;                                                                  // 22 houses

        case (3): valueList = new List <int>()
        {
                10
        };                            break;                                                           // 10

        case (4): valueList = new List <int>()
        {
                1, 2, 2, 3, 2, 1, 1
        };         break;                                                                      // 12 houses

        case (5): valueList = new List <int>()
        {
                2, 2, 2, 3, 4, 3, 4, 2, 2
        };     break;                                                                          // 22 houses

        case (6): valueList = new List <int>()
        {
                5, 5
        };           break;

        case (7): valueList = new List <int>()
        {
                5, 5
        };           break;

        case (8): valueList = new List <int>()
        {
                5, 5
        };           break;

        case (9): valueList = new List <int>()
        {
                5, 5
        };           break;
        //  case(5): valueList = new List<int>() {  22,23,22,21,24,27,31,29,31,34,34,34,30,34,33,32,31,30,32 };
        //  case(6): valueList = new List<int>() {  22,23,22,21,24,27,31,29,31,30,29,31,30,32,35,34,33,32,33,32,31,28,26,24 };

        default: valueList = new List <int>()
        {
                0
        }; break;
        }
        transmitter_valueList = valueList;                      // transmits the values on the graph


        ShowGraph(valueList, barChartVisual, -1, (int _i) => "" + (_i), (float _f) => Mathf.RoundToInt(_f) + "  ");
    }
Пример #10
0
    private void PlotBreakEvenPoint()
    {
        plot4.Clear();
        Finances finances = GameController.instance.player.finances;

        List <int> priceData = new List <int>();

        priceData.AddRange(finances.revenue);
        priceData.Sort();

        List <int> quantityData = finances.GetQuantityData();

        Regression regression = new Regression();
        float      a = 0; float b = 0; float rSq = 0;
        //regression.LinearRegression(quantityData.ToArray(), finances.revenue.ToArray(),out a, out b, out rSq);

        List <float> regressionData = new List <float>();

        float xSize = (quantityData.Max() - quantityData.Min()) / quantityData.Count;

        List <float> quantityNormalizedData = new List <float>()
        {
            0
        };

        for (int i = 0; i < quantityData.Count; i++)
        {
            quantityNormalizedData.Add(quantityNormalizedData.LastOrDefault() + xSize);
        }
        float        ySize = (priceData.Max() - priceData.Min()) / priceData.Count;
        List <float> regressionDataNormalized = new List <float>()
        {
            0
        };

        for (int i = 0; i < priceData.Count; i++)
        {
            regressionDataNormalized.Add(regressionDataNormalized.LastOrDefault() + ySize);
        }
        regressionDataNormalized.Remove(regressionDataNormalized.LastOrDefault());
        //  regressionData.AddRange(regression.Function(quantityNormalizedData, a, b));
        List <int> x = new List <int>()
        {
            1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12
        };

        LineGraphVisual originalVisual           = new LineGraphVisual(containers[3], dotSprite, 12, false, new Color(1, 1, 1, 0.0f), Color.white);
        LineGraphVisual revenueVisual            = new LineGraphVisual(containers[3], dotSprite, 12, false, Color.cyan, Color.white);
        LineGraphVisual regressionVisual         = new LineGraphVisual(containers[3], dotSprite, 12, false, Color.yellow, Color.white);
        LineGraphVisual expencesRegressionVisual = new LineGraphVisual(containers[3], dotSprite, 12, false, Color.red, Color.red);
        List <float>    extrems            = new List <float>();
        List <float>    expencesRegression = new List <float>();

        if (finances.revenue.Max() >= finances.staticExpences.Max())
        {
            extrems = plot4.ShowPlot(finances.revenue, originalVisual, 14, containers[3], 0, 0, null, displayGrid: false);
        }
        else
        {
            extrems = plot4.ShowPlot(finances.staticExpences, originalVisual, -1, containers[3], 0, 0, displayGrid: false);
        }
        plot4.ShowPlot(regressionDataNormalized, revenueVisual, 14, containers[3], extrems[0], extrems[1],
                       (int i) => Mathf.RoundToInt(quantityNormalizedData[i]).ToString(), (float f) => String.Format("{0:n0} $", Mathf.RoundToInt(f)), displayGrid: true);

        List <int> yearExpences = finances.GetOverYearExpences();

        if (yearExpences.Count < x.Count)
        {
            for (int i = yearExpences.Count; i < x.Count; i++)
            {
                yearExpences.Add(yearExpences.LastOrDefault());
            }
        }
        regression.LinearRegression(x.ToArray(), yearExpences.ToArray(), out a, out b, out rSq);
        // take last 12 elements and delete the last one in order to make regression. Adjust x accordingly
        expencesRegression = regression.Function(x.ConvertAll(p => (float)p), a, b);

        Debug.Log("-----Linear Regression-----");
        Debug.Log("A: " + a + " B: " + b + "Rsquare: " + rSq);
        plot4.ShowPlot(expencesRegression, expencesRegressionVisual, -1, containers[3], extrems[0], extrems[1], displayGrid: false);
    }
Пример #11
0
    private void Awake()
    {
        instance          = this;
        statisticsManager = GameObject.FindObjectOfType <StatisticsManager> ();
        // Grab base objects references
        graphContainer    = transform.Find("graphContainer").GetComponent <RectTransform> ();
        labelTemplateX    = graphContainer.Find("labelTemplateX").GetComponent <RectTransform> ();
        labelTemplateY    = graphContainer.Find("labelTemplateY").GetComponent <RectTransform> ();
        dashContainer     = graphContainer.Find("dashContainer").GetComponent <RectTransform> ();
        dashTemplateX     = dashContainer.Find("dashTemplateX").GetComponent <RectTransform> ();
        dashTemplateY     = dashContainer.Find("dashTemplateY").GetComponent <RectTransform> ();
        tooltipGameObject = graphContainer.Find("tooltip").gameObject;

        startYScaleAtZero     = true;
        gameObjectList        = new List <GameObject> ();
        yLabelList            = new List <RectTransform> ();
        graphVisualObjectList = new List <IGraphVisualObject> ();

        IGraphVisual lineGraphVisual = new LineGraphVisual(graphContainer, dotSprite, Color.green, new Color(1, 1, 1, .5f));
        IGraphVisual barChartVisual  = new BarChartVisual(graphContainer, Color.white, .8f);

        // Set up buttons
        transform.Find("barChartBtn").GetComponent <Button_UI> ().ClickFunc = () =>
        {
            SetGraphVisual(barChartVisual);
        };
        transform.Find("lineGraphBtn").GetComponent <Button_UI> ().ClickFunc = () =>
        {
            SetGraphVisual(lineGraphVisual);
        };

        transform.Find("decreaseVisibleAmountBtn").GetComponent <Button_UI> ().ClickFunc = () =>
        {
            DecreaseVisibleAmount();
        };
        transform.Find("increaseVisibleAmountBtn").GetComponent <Button_UI> ().ClickFunc = () =>
        {
            IncreaseVisibleAmount();
        };

        HideTooltip();

        // Set up base values
        //List<int> valueList = new List<int> () { 5, 98, 56, 45, 30, 22, 17, 15, 13, 17, 25, 37, 40, 36, 33 };

        // List<int> valueList = statisticsManager.numberOfChickens;
        // ShowGraph (valueList, barChartVisual, -1, (int _i) => "" + (_i + 1), (float _f) => "Chickens " + Mathf.RoundToInt (_f));

        /*
         * // Automatically modify graph values and visual
         * bool useBarChart = true;
         * FunctionPeriodic.Create(() => {
         *  for (int i = 0; i < valueList.Count; i++) {
         *      valueList[i] = Mathf.RoundToInt(valueList[i] * UnityEngine.Random.Range(0.8f, 1.2f));
         *      if (valueList[i] < 0) valueList[i] = 0;
         *  }
         *  if (useBarChart) {
         *      ShowGraph(valueList, barChartVisual, -1, (int _i) => "Day " + (_i + 1), (float _f) => "$" + Mathf.RoundToInt(_f));
         *  } else {
         *      ShowGraph(valueList, lineGraphVisual, -1, (int _i) => "Day " + (_i + 1), (float _f) => "$" + Mathf.RoundToInt(_f));
         *  }
         *  useBarChart = !useBarChart;
         * }, .5f);
         * //*/

        // int index = 0;
        // FunctionPeriodic.Create (() =>
        // {
        //     index = (index + 1) % valueList.Count;
        // }, .1f);
        // FunctionPeriodic.Create (() =>
        // {
        //     //int index = UnityEngine.Random.Range(0, valueList.Count);
        //     UpdateValue (index, valueList[index] + UnityEngine.Random.Range (1, 3));
        // }, .02f);
    }
Пример #12
0
    IEnumerator Start()
    {
        instance          = this;
        graphContainer    = transform.Find("graphContainer").GetComponent <RectTransform>();
        labelTemplateX    = graphContainer.Find("labelTemplateX").GetComponent <RectTransform>();
        labelTemplateY    = graphContainer.Find("labelTemplateY").GetComponent <RectTransform>();
        dashTemplateX     = graphContainer.Find("dashTemplateX").GetComponent <RectTransform>();
        dashTemplateY     = graphContainer.Find("dashTemplateY").GetComponent <RectTransform>();
        tooltipGameObject = graphContainer.Find("tooltip").gameObject;

        startYScaleAtZero     = true;
        gameObjectList        = new List <GameObject>();
        yLabelList            = new List <RectTransform>();
        graphVisualObjectList = new List <IGraphVisualObject>();

        IGraphVisual lineGraphVisual = new LineGraphVisual(graphContainer, dotSprite, new Color32(85, 165, 255, 255), new Color32(85, 165, 255, 100));
        IGraphVisual barChartVisual  = new BarChartVisual(graphContainer, new Color32(85, 165, 255, 255), .8f);

        //buttons to change graph interface
        transform.Find("barChartBtn").GetComponent <Button_UI>().ClickFunc = () =>
        {
            SetGraphVisual(barChartVisual);
        };
        transform.Find("lineGraphBtn").GetComponent <Button_UI>().ClickFunc = () =>
        {
            SetGraphVisual(lineGraphVisual);
        };
        transform.Find("decreaseVisibleAmountBtn").GetComponent <Button_UI>().ClickFunc = () => {
            DecreaseVisibleAmount();
        };
        transform.Find("increaseVisibleAmountBtn").GetComponent <Button_UI>().ClickFunc = () => {
            IncreaseVisibleAmount();
        };


        //values to be used in the graph
        List <int> valueList = new List <int>()
        {
        };
        WWW tagsTime = new WWW("http://localhost:81/percentsdata/showTotalTime.php");

        yield return(tagsTime);

        string[] timeArray = tagsTime.text.Split(';');

        int numrows = int.Parse(timeArray[0]);

        bool skipFirst = false;

        foreach (string str in timeArray)
        {
            if (skipFirst)
            {
                int mins = (Int32.Parse(str)) / 60 / 60;
                valueList.Add(mins);
            }
            skipFirst = true;
        }

        WWW tagsName = new WWW("http://localhost:81/percentsdata/ShowTags.php");

        yield return(tagsName);

        //string tagsDataString = tagsData.text;
        string[] nameArray = tagsName.text.Split(';');
        int      num       = Int32.Parse(nameArray[0]);

        string[] names = new string[num];
        Array.Copy(nameArray, 1, names, 0, num);

        //to be performed on startup
        ShowGraph(valueList, barChartVisual, -1, (int _i) => names[(_i)], (float _f) => Mathf.RoundToInt(_f) + " hrs");
    }
Пример #13
0
    IEnumerator NewDateData()
    {
        IGraphVisual lineGraphVisual = new LineGraphVisual(graphContainer, dotSprite, new Color32(85, 165, 255, 255), new Color32(85, 165, 255, 100));
        IGraphVisual barChartVisual  = new BarChartVisual(graphContainer, new Color32(85, 165, 255, 255), .8f);

        WWWForm form = new WWWForm();

        string newDate = date.text;

        string NewYearTimes  = "http://localhost:81/percentsdata/NewYearTimes.php";
        string NewMonthTimes = "http://localhost:81/percentsdata/NewMonthTimes.php";
        string NewDayTimes   = "http://localhost:81/percentsdata/NewDayTimes.php";

        string NewYearTags  = "http://localhost:81/percentsdata/NewYearTags.php";
        string NewMonthTags = "http://localhost:81/percentsdata/NewMonthTags.php";
        string NewDayTags   = "http://localhost:81/percentsdata/NewDayTags.php";

        string toUseTime = "";
        string toUseTag  = "";

        if (newDate.Length == 4)
        {
            toUseTime = NewYearTimes;
            toUseTag  = NewYearTags;
        }
        else if (newDate.Length == 7)
        {
            toUseTime = NewMonthTimes;
            toUseTag  = NewMonthTags;
        }
        else
        {
            toUseTime = NewDayTimes;
            toUseTag  = NewDayTags;
        }

        form.AddField("date", newDate);
        WWW getNewTimes = new WWW(toUseTime, form);

        yield return(getNewTimes);


        string[]   newtimes = getNewTimes.text.Split(';');
        List <int> newList  = new List <int>();

        int numrows = int.Parse(newtimes[0]);

        bool skipFirst = false;

        foreach (string str in newtimes)
        {
            if (skipFirst)
            {
                int mins = (Int32.Parse(str)) / 60 / 60;
                newList.Add(mins);
            }
            skipFirst = true;
        }


        WWW getNewTags = new WWW(toUseTag, form);

        yield return(getNewTags);

        string[] nameArray = getNewTags.text.Split(';');
        int      num       = Int32.Parse(nameArray[0]);

        string[] names = new string[num];
        Array.Copy(nameArray, 1, names, 0, num);

        HideSearchPanel();
        ShowGraph(newList, barChartVisual, -1, (int _i) => names[(_i)], (float _f) => Mathf.RoundToInt(_f) + " hrs");
        UpdateDisplayPanel(date.text);
    }