public void RedoLines()
        {
            chart.Series.Clear();
            FastCandleBitmapSeries candleSeries = new FastCandleBitmapSeries()
            {
                ItemsSource  = master.Fields[0].companies[0].stockViewModel.prices1m,
                XBindingPath = "Year",
                High         = "High",
                Low          = "Low",
                Open         = "Open",
                Close        = "Close"
            };

            candleSeries.ListenPropertyChange = true;
            //candleSeries.Trendlines.Add(new Trendline() { Label = "Trend", Stroke = new SolidColorBrush(Colors.Aqua), Type = TrendlineType.Linear });
            chart.Series.Add(candleSeries);
        }
Exemple #2
0
        void loadCompanyGraphs(Eco.Company comp)
        {
            stockPriceChart.Series.Clear();
            companyValueChart.Series.Clear();

            //INSERT COMPANY VALUES
            FastLineSeries series = new FastLineSeries()
            {
                ItemsSource  = comp.ValueviewModel.values,
                XBindingPath = "Year",
                YBindingPath = "Value"
            };

            series.ListenPropertyChange = true;

            companyValueChart.Series.Add(series);

            //INSERT STOCK PRICES
            FastCandleBitmapSeries candleSeries = new FastCandleBitmapSeries()
            {
                ItemsSource  = comp.stockViewModel.prices1m,
                XBindingPath = "Year",
                High         = "High",
                Low          = "Low",
                Open         = "Open",
                Close        = "Close"
            };

            candleSeries.ListenPropertyChange = true;
            candleSeries.BullFillColor        = new SolidColorBrush(Windows.UI.Color.FromArgb(255, 70, 220, 75));
            candleSeries.BearFillColor        = new SolidColorBrush(Windows.UI.Color.FromArgb(255, 235, 30, 30));
            //stockPriceChart.Background = new SolidColorBrush(Windows.UI.Color.FromArgb(255, 30, 30, 35));

            (stockPriceChart.SecondaryAxis as NumericalAxis).ZoomFactor = 1.4;
            candleSeries.ComparisonMode = FinancialPrice.None;

            stockPriceChart.Series.Add(candleSeries);
        }
        private void OnComboBoxSelectionChanged(object sender, SelectionChangedEventArgs e)
        {
            ComboBox comboBox = sender as ComboBox;

            // Trackball is used only for the Fast Range Area Series.
            if (financialChart.Behaviors.Contains(tackballBehavior))
            {
                financialChart.Behaviors.Remove(tackballBehavior);
            }

            if (comboBox.SelectedIndex == 3 && financialChart != null)
            {
                BarSeries.Visibility                   = Visibility.Collapsed;
                financialChart.Visibility              = Visibility.Visible;
                financialChart.PrimaryAxis.Header      = "Date";
                financialChart.SecondaryAxis.Header    = "Stock Price";
                financialChart.PrimaryAxis.LabelFormat = "MMM/dd";
                FastColumnBitmapSeries hiLoSeries = new FastColumnBitmapSeries();
                hiLoSeries.VisibilityOnLegend = Visibility.Collapsed;
                hiLoSeries.XBindingPath       = "Date";
                hiLoSeries.YBindingPath       = "Price";
                hiLoSeries.ItemsSource        = viewModel.List;
                hiLoSeries.ShowTooltip        = true;
                hiLoSeries.SetValue(ChartTooltip.VerticalAlignmentProperty, VerticalAlignment.Top);
                hiLoSeries.SetValue(ChartTooltip.VerticalOffsetProperty, size);
                financialChart.PrimaryAxis.ZoomFactor   = 1;
                financialChart.SecondaryAxis.ZoomFactor = 1;
                financialChart.Series.Clear();
                financialChart.Series.Add(hiLoSeries);
            }
            else if (comboBox.SelectedIndex == 1 && financialChart != null)
            {
                BarSeries.Visibility                   = Visibility.Collapsed;
                financialChart.Visibility              = Visibility.Visible;
                financialChart.PrimaryAxis.Header      = "Date";
                financialChart.SecondaryAxis.Header    = "Stock Price";
                financialChart.PrimaryAxis.LabelFormat = "MMM/dd";
                FastLineBitmapSeries hiLoSeries = new FastLineBitmapSeries();
                hiLoSeries.VisibilityOnLegend = Visibility.Collapsed;
                hiLoSeries.XBindingPath       = "Date";
                hiLoSeries.YBindingPath       = "Price";
                hiLoSeries.ItemsSource        = viewModel.LineData;
                hiLoSeries.ShowTooltip        = false;
                hiLoSeries.SetValue(ChartTooltip.VerticalAlignmentProperty, VerticalAlignment.Top);
                hiLoSeries.SetValue(ChartTooltip.VerticalOffsetProperty, size);
                financialChart.PrimaryAxis.ZoomFactor   = 1;
                financialChart.SecondaryAxis.ZoomFactor = 1;
                financialChart.Series.Clear();
                financialChart.Series.Add(hiLoSeries);
            }
            else if (comboBox.SelectedIndex == 2 && financialChart != null)
            {
                BarSeries.Visibility      = Visibility.Collapsed;
                financialChart.Visibility = Visibility.Visible;
                financialChart.Behaviors.Add(tackballBehavior);
                financialChart.PrimaryAxis.Header      = "Date";
                financialChart.PrimaryAxis.LabelFormat = "MMM/dd";
                financialChart.SecondaryAxis.Header    = "Stock Price";
                FastRangeAreaBitmapSeries fastRangeAreaBitmapSeries = new FastRangeAreaBitmapSeries();
                fastRangeAreaBitmapSeries.VisibilityOnLegend = Visibility.Collapsed;
                fastRangeAreaBitmapSeries.XBindingPath       = "Date";
                fastRangeAreaBitmapSeries.High                   = "Stock1";
                fastRangeAreaBitmapSeries.Low                    = "Stock2";
                fastRangeAreaBitmapSeries.ItemsSource            = viewModel.RangeData;
                fastRangeAreaBitmapSeries.TrackBallLabelTemplate = this.grid.Resources["rangeSeriesTrackBallLabel"] as DataTemplate;
                financialChart.PrimaryAxis.ZoomFactor            = 1;
                financialChart.SecondaryAxis.ZoomFactor          = 1;
                financialChart.Series.Clear();
                financialChart.Series.Add(fastRangeAreaBitmapSeries);
            }
            else if (comboBox.SelectedIndex == 0 && financialChart != null)
            {
                BarSeries.Visibility                    = Visibility.Collapsed;
                financialChart.Visibility               = Visibility.Visible;
                financialChart.PrimaryAxis.Header       = "Date";
                financialChart.SecondaryAxis.Header     = "Stock Price";
                hiLoOpenCloseBitmap1                    = new FastHiLoOpenCloseBitmapSeries();
                hiLoOpenCloseBitmap1.VisibilityOnLegend = Visibility.Collapsed;
                financialChart.PrimaryAxis.LabelFormat  = "MMM/dd";
                hiLoOpenCloseBitmap1.XBindingPath       = "TimeStamp";
                hiLoOpenCloseBitmap1.High               = "High";
                hiLoOpenCloseBitmap1.Low                = "Low";
                hiLoOpenCloseBitmap1.Open               = "Open";
                hiLoOpenCloseBitmap1.Close              = "Last";
                hiLoOpenCloseBitmap1.ItemsSource        = viewModel.HiloViewModel;
                hiLoOpenCloseBitmap1.ShowTooltip        = true;
                hiLoOpenCloseBitmap1.SetValue(ChartTooltip.VerticalAlignmentProperty, VerticalAlignment.Top);
                hiLoOpenCloseBitmap1.SetValue(ChartTooltip.VerticalOffsetProperty, size);
                hiLoOpenCloseBitmap1.SetValue(ChartTooltip.VerticalAlignmentProperty, VerticalAlignment.Top);
                hiLoOpenCloseBitmap1.SetValue(ChartTooltip.VerticalOffsetProperty, size);
                financialChart.Series.Clear();
                financialChart.PrimaryAxis.ZoomFactor   = 1;
                financialChart.SecondaryAxis.ZoomFactor = 1;
                financialChart.Series.Add(hiLoOpenCloseBitmap1);
            }
            else if (comboBox.SelectedIndex == 8 && financialChart != null)
            {
                BarSeries.Visibility      = Visibility.Collapsed;
                financialChart.Visibility = Visibility.Visible;
                FastHiLoBitmapSeries hiLoOpenClose = new FastHiLoBitmapSeries();
                hiLoOpenClose.VisibilityOnLegend       = Visibility.Collapsed;
                financialChart.PrimaryAxis.Header      = "Date";
                financialChart.SecondaryAxis.Header    = "Stock Price";
                financialChart.PrimaryAxis.LabelFormat = "MMM/dd";
                hiLoOpenClose.XBindingPath             = "TimeStamp";
                hiLoOpenClose.High        = "High";
                hiLoOpenClose.Low         = "Low";
                hiLoOpenClose.ItemsSource = viewModel.HiloViewModel;
                hiLoOpenClose.ShowTooltip = true;
                financialChart.Series.Clear();
                financialChart.PrimaryAxis.ZoomFactor   = 1;
                financialChart.SecondaryAxis.ZoomFactor = 1;
                financialChart.Series.Add(hiLoOpenClose);
                hiLoOpenClose.SetValue(ChartTooltip.VerticalAlignmentProperty, VerticalAlignment.Top);
                hiLoOpenClose.SetValue(ChartTooltip.VerticalOffsetProperty, size);
            }
            else if (comboBox.SelectedIndex == 4 && financialChart != null)
            {
                financialChart.Visibility = Visibility.Collapsed;
                BarSeries.Visibility      = Visibility.Visible;
            }
            else if (comboBox.SelectedIndex == 5 && financialChart != null)
            {
                BarSeries.Visibility      = Visibility.Collapsed;
                financialChart.Visibility = Visibility.Visible;
                financialChart.PrimaryAxis.LabelFormat = "MMM/dd";
                financialChart.PrimaryAxis.Header      = "Date";
                financialChart.SecondaryAxis.Header    = "Stock Price";
                FastStepLineBitmapSeries hiLoSeries = new FastStepLineBitmapSeries();
                hiLoSeries.VisibilityOnLegend = Visibility.Collapsed;
                hiLoSeries.XBindingPath       = "Date";
                hiLoSeries.YBindingPath       = "Price";
                hiLoSeries.ItemsSource        = viewModel.List;
                hiLoSeries.ShowTooltip        = true;
                hiLoSeries.SetValue(ChartTooltip.VerticalAlignmentProperty, VerticalAlignment.Top);
                hiLoSeries.SetValue(ChartTooltip.VerticalOffsetProperty, size);
                financialChart.PrimaryAxis.ZoomFactor   = 1;
                financialChart.SecondaryAxis.ZoomFactor = 1;
                financialChart.Series.Clear();
                financialChart.Series.Add(hiLoSeries);
            }
            else if (comboBox.SelectedIndex == 6 && financialChart != null)
            {
                BarSeries.Visibility                   = Visibility.Collapsed;
                financialChart.Visibility              = Visibility.Visible;
                financialChart.PrimaryAxis.Header      = "Date";
                financialChart.PrimaryAxis.LabelFormat = "MMM/dd";
                financialChart.SecondaryAxis.Header    = "Stock Price";
                FastScatterBitmapSeries hiLoSeries = new FastScatterBitmapSeries();
                hiLoSeries.VisibilityOnLegend = Visibility.Collapsed;
                hiLoSeries.XBindingPath       = "Date";
                hiLoSeries.YBindingPath       = "Price";
                hiLoSeries.ItemsSource        = viewModel.LineData;
                hiLoSeries.ShowTooltip        = true;
                hiLoSeries.SetValue(ChartTooltip.VerticalAlignmentProperty, VerticalAlignment.Top);
                hiLoSeries.SetValue(ChartTooltip.VerticalOffsetProperty, size);
                financialChart.PrimaryAxis.ZoomFactor   = 1;
                financialChart.SecondaryAxis.ZoomFactor = 1;
                financialChart.Series.Clear();
                financialChart.Series.Add(hiLoSeries);
            }
            else if (comboBox.SelectedIndex == 7 && financialChart != null)
            {
                BarSeries.Visibility                   = Visibility.Collapsed;
                financialChart.Visibility              = Visibility.Visible;
                financialChart.PrimaryAxis.Header      = "Date";
                financialChart.SecondaryAxis.Header    = "Stock Price";
                financialChart.PrimaryAxis.LabelFormat = "MMM/dd";
                FastCandleBitmapSeries hiLoOpenClose = new FastCandleBitmapSeries();
                hiLoOpenClose.VisibilityOnLegend = Visibility.Collapsed;
                hiLoOpenClose.XBindingPath       = "TimeStamp";
                hiLoOpenClose.High        = "High";
                hiLoOpenClose.Low         = "Low";
                hiLoOpenClose.Open        = "Open";
                hiLoOpenClose.Close       = "Last";
                hiLoOpenClose.ItemsSource = viewModel.HiloViewModel1;
                hiLoOpenClose.SetValue(ChartTooltip.VerticalAlignmentProperty, VerticalAlignment.Top);
                hiLoOpenClose.SetValue(ChartTooltip.VerticalOffsetProperty, size);
                hiLoOpenClose.ShowTooltip = true;
                financialChart.Series.Clear();
                financialChart.Series.Add(hiLoOpenClose);
            }
            else if (comboBox.SelectedIndex == 9 && financialChart != null)
            {
                BarSeries.Visibility                   = Visibility.Collapsed;
                financialChart.Visibility              = Visibility.Visible;
                financialChart.DataContext             = new FastStackingColumnChartViewModel();
                financialChart.PrimaryAxis.LabelFormat = "";
                financialChart.PrimaryAxis.Header      = "Product Id";
                financialChart.SecondaryAxis.Header    = "Stock";
                FastStackingColumnBitmapSeries stackingSeries = new FastStackingColumnBitmapSeries();
                stackingSeries.VisibilityOnLegend = Visibility.Collapsed;
                stackingSeries.XBindingPath       = "CountryName";
                stackingSeries.YBindingPath       = "GoldMedals";
                stackingSeries.ItemsSource        = (financialChart.DataContext as FastStackingColumnChartViewModel).MedalDetails;
                stackingSeries.ShowTooltip        = true;
                stackingSeries.SetValue(ChartTooltip.VerticalAlignmentProperty, VerticalAlignment.Top);
                stackingSeries.SetValue(ChartTooltip.VerticalOffsetProperty, size);
                FastStackingColumnBitmapSeries stackingSeries1 = new FastStackingColumnBitmapSeries();
                stackingSeries1.VisibilityOnLegend = Visibility.Collapsed;
                stackingSeries1.XBindingPath       = "CountryName";
                stackingSeries1.YBindingPath       = "SilverMedals";
                stackingSeries1.ItemsSource        = (financialChart.DataContext as FastStackingColumnChartViewModel).MedalDetails;
                stackingSeries1.ShowTooltip        = true;
                stackingSeries1.SetValue(ChartTooltip.VerticalAlignmentProperty, VerticalAlignment.Top);
                stackingSeries1.SetValue(ChartTooltip.VerticalOffsetProperty, size);
                FastStackingColumnBitmapSeries stackingSeries2 = new FastStackingColumnBitmapSeries();
                stackingSeries2.VisibilityOnLegend = Visibility.Collapsed;
                stackingSeries2.XBindingPath       = "CountryName";
                stackingSeries2.YBindingPath       = "BronzeMedals";
                stackingSeries2.ItemsSource        = (financialChart.DataContext as FastStackingColumnChartViewModel).MedalDetails;
                stackingSeries2.ShowTooltip        = true;
                stackingSeries2.SetValue(ChartTooltip.VerticalAlignmentProperty, VerticalAlignment.Top);
                stackingSeries2.SetValue(ChartTooltip.VerticalOffsetProperty, size);
                financialChart.PrimaryAxis.ZoomFactor   = 1;
                financialChart.SecondaryAxis.ZoomFactor = 1;
                financialChart.Series.Clear();
                financialChart.Series.Add(stackingSeries);
                financialChart.Series.Add(stackingSeries1);
                financialChart.Series.Add(stackingSeries2);
            }
        }