internal void AddHeatChartFromCurrent()
        {
            AggregatedData          lastInserted   = this.livePanel.Item2.intensityData[this.livePanel.Item2.intensityData.Count - 1];
            ChartValues <HeatPoint> temporalvalues = new ChartValues <HeatPoint>();

            for (int j = 0; j < lastInserted.aggregatedData.Count(); j++)
            {
                temporalvalues.Add(new HeatPoint(j, livePanel.Item2.intensityData.Count(), lastInserted.aggregatedData[j]));
            }
            if (liveheatchart.Series.Count() == 0)
            {
                liveheat = new HeatSeries {
                    Values = temporalvalues,
                    GradientStopCollection = gradient
                };
                liveheatchart.Series.Add(liveheat);
            }
            else
            {
                for (int j = 0; j < lastInserted.aggregatedData.Count(); j++)
                {
                    //liveheatchart.Series.Last().Values.Add(new HeatPoint(j, livePanel.Item2.intensityData.Count(), lastInserted.aggregatedData[j]));
                    liveheat.Values.Add(new HeatPoint(j, livePanel.Item2.intensityData.Count(), lastInserted.aggregatedData[j]));
                }
            }
        }
        private void AddHeatChartFromFile(Panel heatpanel, IntensityData idata)
        {
            LiveCharts.WinForms.CartesianChart heatchart;
            heatchart                   = new LiveCharts.WinForms.CartesianChart();
            heatchart.Size              = new Size(heatSizeX, heatSizeY);
            heatchart.Anchor            = (AnchorStyles.Left | AnchorStyles.Right);
            heatchart.Left              = 0;
            heatchart.Top               = 50;
            heatchart.DisableAnimations = true;
            heatchart.Hoverable         = false;
            heatchart.DataTooltip       = null;

            ChartValues <HeatPoint> values = new ChartValues <HeatPoint>();
            List <HeatPoint>        buffer = new List <HeatPoint>();

            for (int i = 0; i < idata.intensityData.Count(); i++)
            {
                Backend.Model.AggregatedData agregateddata = idata.intensityData[i];
                for (int j = 0; j < agregateddata.aggregatedData.Count(); j++)
                {
                    buffer.Add(new HeatPoint(j, i, agregateddata.aggregatedData[j]));
                }
            }
            values.AddRange(buffer);
            HeatSeries hs = new HeatSeries {
                Values = values,
                GradientStopCollection = gradient
            };

            allPanelsIntensityData.Add(new Tuple <Panel, IntensityData, HeatSeries>(heatpanel, idata, hs));
            heatchart.Series.Add(hs);
            heatpanel.Controls.Add(heatchart);
        }
Exemple #3
0
        public pHeatChart(string InstanceName)
        {
            //Set Element info setup
            Element = new CartesianChart();
            Element.DisableAnimations = true;

            DataGrid      = new DataSetCollection();
            ChartSeries   = new HeatSeries();
            SeriesCollect = new SeriesCollection();

            ChartSeries.Values     = new ChartValues <HeatPoint>();
            ChartSeries.DataLabels = true;

            Element.Series.Add(ChartSeries);

            Element.Name = InstanceName;
        }
Exemple #4
0
 public void initializeHeatMaps()
 {
     hs = new HeatSeries {
         Values = new ChartValues <HeatPoint> {
             new HeatPoint(0, 0, 0)
         }, DataLabels = false
     };
     hs.Title = "Community";
     aX       = new Axis {
     };
     aX.Title = "Longitude";
     aY       = new Axis {
     };
     aY.Title = "Latitude";
     HeatMap.Series.Add(hs);
     HeatMap.AxisX.Add(aX);
     HeatMap.AxisY.Add(aY);
     hs1 = new HeatSeries
     {
         Values = new ChartValues <HeatPoint> {
             new HeatPoint(0, 0, 0)
         },
         DataLabels             = false,
         GradientStopCollection = new GradientStopCollection {
             new GradientStop(System.Windows.Media.Color.FromRgb(96, 74, 75), 0),
             new GradientStop(System.Windows.Media.Color.FromRgb(95, 58, 61), 0.25),
             new GradientStop(System.Windows.Media.Color.FromRgb(94, 45, 44), 0.5),
             new GradientStop(System.Windows.Media.Color.FromRgb(112, 30, 27), 0.75),
             new GradientStop(System.Windows.Media.Color.FromRgb(226, 11, 7), 1.0)
         }
     };
     hs1.Title = "Patients";
     aX1       = new Axis {
     };
     aX1.Title = "Longitude";
     aY1       = new Axis {
     };
     aY1.Title = "Latitude";
     HeatMap2.Series.Add(hs1);
     HeatMap2.AxisX.Add(aX1);
     HeatMap2.AxisY.Add(aY1);
 }
Exemple #5
0
        private void DrawHeatMap()
        {
            HeatSeries heatSeries          = new HeatSeries();
            ChartValues <HeatPoint> Values = new ChartValues <HeatPoint>();
            int xStart = (int)GA.evaluatedFunction.xDomain.X,
                xEnd   = (int)GA.evaluatedFunction.xDomain.Y,
                yStart = (int)GA.evaluatedFunction.yDomain.X,
                yEnd   = (int)GA.evaluatedFunction.yDomain.Y;

            for (int i = xStart; i < xEnd; i++)
            {
                for (int j = yStart; j < yEnd; j++)
                {
                    Values.Add(new HeatPoint(i, j, GA.fitnessFunction(i, j)));
                }
            }
            heatSeries.Values = Values;
            heatSeries.Title  = "f(x,y) = ";
            heatseries.Add(heatSeries);

            HeatMap.Series.Add(heatseries[0]);
        }
Exemple #6
0
            public Series()
            {
                GA = new GA();

                var mapper = Mappers.Xy <ObservablePoint>()
                             .X(p => p.X)
                             .Y(p => Math.Log10(p.Y));

                Score = new LineSeries
                {
                    Title  = "Score",
                    Values = new ChartValues <double> {
                    },
                    Fill   = Brushes.Transparent,
                };


                Champs = new LineSeries[GA.PolynomialOrder];
                for (int i = 0; i < GA.PolynomialOrder; ++i)
                {
                    Champs[i] = new LineSeries()
                    {
                        Title           = $"I_{i}",
                        Values          = new ChartValues <double>(),
                        StrokeThickness = 1,
                        PointGeometry   = DefaultGeometries.None
                    };
                }

                R = new LineSeries()
                {
                    Title  = "R",
                    Values = new ChartValues <double>(),
                };

                Actual = new LineSeries()
                {
                    Title         = "Actual",
                    Values        = new ChartValues <ObservablePoint>(),
                    PointGeometry = DefaultGeometries.None
                };

                Expected = new LineSeries()
                {
                    Title         = "Expected",
                    Values        = new ChartValues <ObservablePoint>(),
                    PointGeometry = DefaultGeometries.None
                };
                Expected.Values.AddRange(GA.ExpectedValsX.Zip(GA.ExpectedValsY, (x, y) => new ObservablePoint(x, y)));

                Pop = new ScatterSeries()
                {
                    Title                 = "Pop",
                    Values                = new ChartValues <ScatterPoint>(),
                    PointGeometry         = DefaultGeometries.Circle,
                    StrokeThickness       = 1,
                    Fill                  = Brushes.Blue,
                    Stroke                = Brushes.Blue,
                    MaxPointShapeDiameter = 8,
                    MinPointShapeDiameter = 2
                };

                ActualPop = new HeatSeries()
                {
                    Values = new ChartValues <HeatPoint>(),
                    GradientStopCollection = new GradientStopCollection()
                    {
                        new GradientStop(Color.FromArgb(0x99, 0xEE, 0x11, 0x11), 0),
                        new GradientStop(Color.FromArgb(0x99, 0xBB, 0x11, 0x44), 0.25),
                        new GradientStop(Color.FromArgb(0x99, 0x88, 0x11, 0x77), 0.5),
                        new GradientStop(Color.FromArgb(0x99, 0x55, 0x11, 0xAA), 0.75),
                        new GradientStop(Color.FromArgb(0x99, 0x22, 0x11, 0xDD), 1),
                    },
                    DataLabels     = false,
                    DrawsHeatRange = false,
                };

                int f = 4;

                ActualPop.Values.AddRange(Enumerable
                                          .Range(-10 / f, 21 / f)
                                          .Select(x =>
                {
                    return(Enumerable.Range(-10 / f, 21 / f)
                           .Select((y) =>
                    {
                        var ind = new CartesianIndividual(2);
                        ind.Values[0] = x * f;
                        ind.Values[1] = y * f;
                        return new HeatPoint(f * x, f * y, ind.PolynomialEval(GA.PowsOfXForAllX, GA.ExpectedValsY));
                    }));
                })
                                          .SelectMany(hp => hp)
                                          .ToList());

                Champ = new LineSeries()
                {
                    Title         = "Champ",
                    Values        = new ChartValues <ObservablePoint>(),
                    PointGeometry = DefaultGeometries.None,
                    //PointForeground = Brushes.Red,
                    Stroke         = Brushes.Red,
                    Fill           = Brushes.Transparent,
                    LineSmoothness = 0
                };

                ScoreCollection = new SeriesCollection()
                {
                    Score
                };

                PopCollection = new SeriesCollection {
                    Pop, Champ,
                };

                ChampionCollection = new SeriesCollection();
                ChampionCollection.AddRange(Champs);

                RadiusCollection = new SeriesCollection {
                    R
                };

                PhenomeCollection = new SeriesCollection {
                    Expected, Actual
                };

                Formatter = y => Math.Pow(y, 10).ToString("N");

                _actionText = "Start";
            }