Exemple #1
0
        private void createPlot()
        {
            Size size = new Size(740, 400);

            //CREATE PLOT
            PanelPlot      = UniPanel.Create(Dialog, BorderStyle.None, false);
            PanelPlot.Size = new Size(size.Width, size.Height + 30);

            //CHART
            UniChart chart = UniChart.Create(PanelPlot, 0, 0, size.Width, size.Height, BorderStyle.FixedSingle);

            chart.setTitles(null, null, "Performance in %");
            chart.setLabelFormat(null, "0%");
            chart.setStartFromZeros(false);

            //EVENT LISTENER
            PanelPlot.VisibleChanged += (s, e) =>
            {
                //GET PERFORMANCE
                double[] perArray = new double[PerformanceList.Count];
                for (int i = 0; i < perArray.Length; i++)
                {
                    perArray[i] = PerformanceList[i].Performance;
                }

                //PREPARE CHART
                chart.SeriesRemove();
                Series series = chart.SeriesLine("Performance of Network", SeriesChartType.Line, Colors.MainRecessive, 1, perArray, null);
                series.MarkerStyle       = MarkerStyle.Circle;
                series.MarkerColor       = Colors.MainDominant;
                series.MarkerSize        = 4;
                series.MarkerBorderWidth = 1;
                series.MarkerBorderColor = Colors.MainRecessive;

                //DATA LABEL
                for (int i = 0; i < PerformanceList.Count; i++)
                {
                    series.Points[i].Label = "LR: " + (PerformanceList[i].LearningRate * 100) + "%\nE: " + PerformanceList[i].Epochs + "\n(" + PerformanceList[i].Duration.ToString(@"mm\:ss") + ")";
                }
            };
        }