Пример #1
0
        private void NChartControl1_Click(object sender, EventArgs e)
        {
            NPostbackEventArgs eventArgs    = e as NPostbackEventArgs;
            object             selectedNode = eventArgs.Id.FindInDocument(nChartControl1.Document);

            if (selectedNode is NDataPoint)
            {
                NDataPoint dataPoint = (NDataPoint)selectedNode;

                dataPoint[DataPointValue.PieDetachment] = 10;

                NSeries series = (NSeries)dataPoint.ParentNode;
                series.StoreDataPoint(dataPoint.IndexInSeries, dataPoint);

                switch (dataPoint.IndexInSeries)
                {
                case 0:
                    SalesOverTimeImg.ImageUrl = "NInteractiveCarSalesPage.aspx";
                    break;

                case 1:
                    SalesOverTimeImg.ImageUrl = "NInteractiveTrainSalesPage.aspx";
                    break;

                case 2:
                    SalesOverTimeImg.ImageUrl = "NInteractiveShipSalesPage.aspx";
                    break;

                case 3:
                    SalesOverTimeImg.ImageUrl = "NInteractiveBusSalesPage.aspx";
                    break;
                }
            }
        }
        private void ShowDataLabelsCheckBox_Checked(object sender, System.Windows.RoutedEventArgs e)
        {
            NSeries series = (NSeries)nChartControl1.Charts[0].Series[0];

            series.DataLabelStyle.Visible = (bool)ShowDataLabelsCheckBox.IsChecked;
            nChartControl1.Refresh();
        }
        private void GenerateData(NSeries series, int nTotalCount, int nMaxInfinityCount)
        {
            SortedList arrInfinityIndices = new SortedList();

            for (int i = 0; i < nMaxInfinityCount; i++)
            {
                int nInfinityIndex = Random.Next(0, nTotalCount);
                arrInfinityIndices[nInfinityIndex] = null;
            }

            for (int k = 0; k < nTotalCount; k++)
            {
                if (arrInfinityIndices.ContainsKey(k))
                {
                    if (k % 2 == 0)
                    {
                        series.Values.Add(double.PositiveInfinity);
                    }
                    else
                    {
                        series.Values.Add(double.NegativeInfinity);
                    }
                }
                else
                {
                    series.Values.Add(Random.NextDouble() * 10);
                }
            }
        }
Пример #4
0
            public override void UpdateReferences(INReferenceProvider provider)
            {
                base.UpdateReferences(provider);

                if (provider == null)
                {
                    if (m_Timer != null)
                    {
                        m_Timer.Stop();
                        m_Timer.Tick -= new EventHandler(OnTimerTick);
                        m_Timer.Dispose();
                        m_Timer = null;
                    }
                }
                else
                {
                    m_Timer          = new Timer();
                    m_Timer.Interval = 50;
                    m_Timer.Tick    += new EventHandler(OnTimerTick);
                    m_Timer.Start();

                    m_SeriesToPercents.Clear();

                    NNodeTreeEnumerator enumerator = new NNodeTreeEnumerator(GetView().Document, TreeTraversalOrder.DepthFirstPreOrder);
                    while (enumerator.MoveNext())
                    {
                        NSeries series = enumerator.Current as NSeries;
                        if (series != null)
                        {
                            m_SeriesToPercents.Add(series, GetTransparencyPercent(series.FillStyle));
                        }
                    }
                }
            }
Пример #5
0
        private void InflateMarginsCheckBox_Checked(object sender, System.Windows.RoutedEventArgs e)
        {
            NSeries series = (NSeries)nChartControl1.Charts[0].Series[0];

            series.InflateMargins = (bool)InflateMarginsCheckBox.IsChecked;
            nChartControl1.Refresh();
        }
Пример #6
0
        private void UpdateExpressions(NSeries lineUpper, NSeries lineLower, NFunctionCalculator upperCalculator,
                                       NFunctionCalculator lowerCalculator, NFunctionCalculator SMACalculator)
        {
            int nPeriod    = PeriodDropDownList.SelectedIndex * 10;
            int nDeviation = DeviationDropDownList.SelectedIndex;

            SMACalculator.Expression = String.Format("SMA(close; {0})", nPeriod);

            if (FunctionDropDownList.SelectedIndex == 0)
            {
                lineUpper.Name = "Bollinger Band - Upper";
                lineLower.Name = "Bollinger Band - Lower";

                upperCalculator.Expression = String.Format("BOLLINGER(close; {0}; {1})", nPeriod, nDeviation);
                lowerCalculator.Expression = String.Format("BOLLINGER(close; {0}; {1})", nPeriod, -nDeviation);
            }
            else
            {
                lineUpper.Name = "Envelopes - Upper Line";
                lineLower.Name = "Envelopes - Lower Line";

                upperCalculator.Expression = String.Format("ENV(close; {0}; {1})", nPeriod, nDeviation);
                lowerCalculator.Expression = String.Format("ENV(close; {0}; {1})", nPeriod, -nDeviation);
            }
        }
Пример #7
0
        private void InflateMarginsCheck_CheckedChanged(object sender, System.EventArgs e)
        {
            NSeries series = (NSeries)nChartControl1.Charts[0].Series[0];

            series.InflateMargins = InflateMarginsCheck.Checked;
            nChartControl1.Refresh();
        }
Пример #8
0
        private void ChartControl_OnMouseDown(object sender, System.Windows.Forms.MouseEventArgs e)
        {
            NHitTestResult result = nChartControl1.HitTest(e.X, e.Y);

            NWatermark watermark = result.Object as NWatermark;

            if (watermark == null)
            {
                return;
            }

            CarData car = watermark.Tag as CarData;

            if (car == null)
            {
                return;
            }

            m_ReviewLabel.Text = "Concept car from " + car.AuthorName;

            NSeries series = (NSeries)nChartControl1.Charts[0].Series[0];

            series.Values.Clear();
            series.Values.AddRange(car.Values);

            nChartControl1.Refresh();
        }
Пример #9
0
        private void ShowDataLabelsCheck_CheckedChanged(object sender, EventArgs e)
        {
            NSeries series = (NSeries)nChartControl1.Charts[0].Series[0];

            series.DataLabelStyle.Visible = ShowDataLabelsCheck.Checked;
            nChartControl1.Refresh();
        }
        private void GenerateData(NSeries series0, NSeries series1)
        {
            int    randSeed = int.Parse(HiddenField1.Value);
            Random rand     = new Random(randSeed);

            series0.Values.FillRandomRange(rand, 7, 30.0, 80.0);
            series1.Values.FillRandomRange(rand, 7, 20.0, 60.0);
        }
Пример #11
0
        private void AppearanceModeCombo_SelectedIndexChanged(object sender, System.EventArgs e)
        {
            NSeries series = (NSeries)nChartControl1.Charts[0].Series[0];

            series.EmptyDataPointsAppearance.AppearanceMode = (EmptyDataPointsAppearanceMode)AppearanceModeCombo.SelectedIndex;

            nChartControl1.Refresh();
        }
Пример #12
0
        private void NChartControl1_Click(object sender, EventArgs e)
        {
            NPostbackEventArgs eventArgs      = e as NPostbackEventArgs;
            object             selectedObject = eventArgs.Id.FindInDocument(nChartControl1.Document);

            if (selectedObject is NDataPoint)
            {
                NDataPoint dataPoint = (NDataPoint)selectedObject;

                dataPoint[DataPointValue.FillStyle] = new NColorFillStyle(Color.Red);

                NSeries series = (NSeries)dataPoint.ParentNode;
                series.StoreDataPoint(dataPoint.IndexInSeries, dataPoint);

                return;
            }

            if (selectedObject is NLabel)
            {
                ((NLabel)selectedObject).TextStyle.FillStyle = new NColorFillStyle(Color.Red);
                return;
            }

            if (selectedObject is NLegend)
            {
                ((NLegend)selectedObject).FillStyle = new NColorFillStyle(Color.Red);
                return;
            }

            if (selectedObject is NLegendItemCellData)
            {
                NLegendItemCellData licd   = selectedObject as NLegendItemCellData;
                NLegend             legend = nChartControl1.Legends[0];
                SelectDataItem(legend.Data.Items.IndexOf(licd));
                return;
            }

            if (selectedObject is NChartWall)
            {
                ((NChartWall)selectedObject).FillStyle = new NColorFillStyle(Color.Red);
                return;
            }

            if (selectedObject is NAxisStripe)
            {
                ((NAxisStripe)selectedObject).FillStyle = new NColorFillStyle(Color.Red);
                return;
            }

            if (selectedObject is NAxis)
            {
                NAxis axis = selectedObject as NAxis;
                NStandardScaleConfigurator scaleConfigurator = (NStandardScaleConfigurator)axis.ScaleConfigurator;
                scaleConfigurator.RulerStyle.BorderStyle.Color   = Color.Red;
                scaleConfigurator.LabelStyle.TextStyle.FillStyle = new NColorFillStyle(Color.Red);
            }
        }
Пример #13
0
        private void ShowMarkersCheckBox_Checked(object sender, System.Windows.RoutedEventArgs e)
        {
            NChart  chart  = nChartControl1.Charts[0];
            NSeries series = (NSeries)chart.Series[0];

            series.MarkerStyle.Visible = (bool)ShowMarkersCheckBox.IsChecked;

            nChartControl1.Refresh();
        }
Пример #14
0
        private void GenerateDataButton_Click(object sender, System.EventArgs e)
        {
            NChart  chart  = nChartControl1.Charts[0];
            NSeries series = (NSeries)chart.Series[0];

            GenerateData(series);

            nChartControl1.Refresh();
        }
Пример #15
0
        private void BuildExpression(NStockSeries stock, NSeries line)
        {
            NDataSeriesDouble arg;
            StringBuilder     sb = new StringBuilder();
            int nPeriod          = PeriodDropDownList.SelectedIndex;

            arg = stock.OpenValues;

            switch (ApplyFunctionToDropDownList.SelectedIndex)
            {
            case 0:
                arg = stock.OpenValues;
                break;

            case 1:
                arg = stock.HighValues;
                break;

            case 2:
                arg = stock.LowValues;
                break;

            case 3:
                arg = stock.CloseValues;
                break;
            }

            switch (FunctionDropDownList.SelectedIndex)
            {
            case 0:
                sb.AppendFormat("SMA({0}; {1})", arg.Name, nPeriod);
                line.Name = "Simple Moving Average";
                break;

            case 1:
                sb.AppendFormat("WMA({0}; {1})", arg.Name, nPeriod);
                line.Name = "Weighted Moving Average";
                break;

            case 2:
                sb.AppendFormat("EMA({0}; {1})", arg.Name, nPeriod);
                line.Name = "Exponential Moving Average";
                break;

            case 3:
                sb.AppendFormat("MMA({0}; {1})", arg.Name, nPeriod);
                line.Name = "Modified Moving Average";
                break;
            }

            nFunction.Arguments.Clear();
            nFunction.Arguments.Add(arg);
            nFunction.Expression = sb.ToString();

            // form controls
            ExpressionTextBox.Text = nFunction.Expression;
        }
Пример #16
0
        void SetDataPointColors(NSeries series)
        {
            NChartPalette palette = new NChartPalette(ChartPredefinedPalette.Fresh);

            for (int i = 0; i < 5; i++)
            {
                series.FillStyles[i] = new NColorFillStyle(palette.SeriesColors[i]);
            }
        }
Пример #17
0
        private void checkShowMarkers_CheckedChanged(object sender, System.EventArgs e)
        {
            NChart  chart  = nChartControl1.Charts[0];
            NSeries series = (NSeries)chart.Series[0];

            series.MarkerStyle.Visible = ShowMarkersCheck.Checked;

            nChartControl1.Refresh();
        }
Пример #18
0
        private void FindAndHighlightDataPoints(NSeries bar)
        {
            switch (SearchForDropDownList.SelectedIndex)
            {
            case 0:
            {
                int index = bar.Values.FindMaxValue();
                bar.FillStyles[index] = new NColorFillStyle(Color.Red);
                break;
            }

            case 1:
            {
                int index = bar.Values.FindMinValue();
                bar.FillStyles[index] = new NColorFillStyle(Color.Red);
                break;
            }

            case 2:
            {
                try
                {
                    double dValue = Double.Parse(CustomValueTextBox.Text);

                    int index = bar.Values.FindValue(dValue);
                    if (index == -1)
                    {
                        DisplayString("The specified value was not found \n in the bar Values series");
                    }
                    else
                    {
                        bar.FillStyles[index] = new NColorFillStyle(Color.Red);
                    }
                }
                catch
                {
                }

                break;
            }

            case 3:
            {
                int index = bar.Labels.FindString(CustomStringTextBox.Text);
                if (index == -1)
                {
                    DisplayString("The specified string was not found \n in the bar Labels series");
                }
                else
                {
                    bar.FillStyles[index] = new NColorFillStyle(Color.Red);
                }

                break;
            }
            }
        }
Пример #19
0
        private void GenerateData(NSeries series)
        {
            series.Values.Clear();

            for (int i = 0; i < 30; i++)
            {
                double value = Math.Sin(i * 0.2) * 10 + Random.NextDouble() * 4;
                series.Values.Add(value);
            }
        }
Пример #20
0
        private NChart CreateAnchorPanelChart()
        {
            NChart  chart  = null;
            NSeries series = null;

            switch (MiniChartTypeComboBox.SelectedIndex)
            {
            case 0:                     // Pie
                chart  = new NPieChart();
                series = (NSeries)chart.Series.Add(SeriesType.Pie);
                break;

            case 1:                     // Doughnut
            {
                chart = new NPieChart();
                NPieSeries pie = (NPieSeries)chart.Series.Add(SeriesType.Pie);
                pie.PieStyle = PieStyle.Torus;
                series       = pie;
                break;
            }

            case 2:                     // Bar
                chart = new NCartesianChart();
                chart.Wall(ChartWallType.Back).Visible    = false;
                chart.Axis(StandardAxis.PrimaryX).Visible = false;
                chart.Axis(StandardAxis.PrimaryY).Visible = false;
                chart.Axis(StandardAxis.Depth).Visible    = false;
                series = (NSeries)chart.Series.Add(SeriesType.Bar);
                break;

            case 3:                     // Area
                chart = new NCartesianChart();
                chart.Wall(ChartWallType.Back).Visible    = false;
                chart.Axis(StandardAxis.PrimaryX).Visible = false;
                chart.Axis(StandardAxis.PrimaryY).Visible = false;
                chart.Axis(StandardAxis.Depth).Visible    = false;
                series = (NSeries)chart.Series.Add(SeriesType.Area);
                break;
            }

            chart.BoundsMode = BoundsMode.Fit;
            chart.DockMode   = PanelDockMode.Fill;
            series.DataLabelStyle.Visible = false;

            NDataPoint dp = new NDataPoint();

            for (int i = 0; i < 5; i++)
            {
                dp[DataPointValue.Value]     = 5 + Random.Next(10);
                dp[DataPointValue.FillStyle] = new NColorFillStyle(RandomColor());
                series.AddDataPoint(dp);
            }

            return(chart);
        }
        private void SeriesDataLabelButton_Click(object sender, System.EventArgs e)
        {
            NSeries         series = (NSeries)nChartControl1.Charts[0].Series[0];
            NDataLabelStyle dataLabelStyleResult;

            if (NDataLabelStyleTypeEditor.Edit(series.DataLabelStyle, out dataLabelStyleResult))
            {
                series.DataLabelStyle = dataLabelStyleResult;
                nChartControl1.Refresh();
            }
        }
Пример #22
0
        private void BarBorderButton_Click(object sender, System.EventArgs e)
        {
            NStrokeStyle strokeStyleResult;
            NSeries      series = (NSeries)nChartControl1.Charts[0].Series[0];

            if (NStrokeStyleTypeEditor.Edit(series.BorderStyle, out strokeStyleResult))
            {
                series.BorderStyle = strokeStyleResult;
                nChartControl1.Refresh();
            }
        }
Пример #23
0
        private void BarFEButton_Click(object sender, System.EventArgs e)
        {
            NFillStyle fillStyleResult;
            NSeries    series = (NSeries)nChartControl1.Charts[0].Series[0];

            if (NFillStyleTypeEditor.Edit(series.FillStyle, out fillStyleResult))
            {
                series.FillStyle = fillStyleResult;
                nChartControl1.Refresh();
            }
        }
        private void MarkerModeCombo_SelectedIndexChanged(object sender, System.EventArgs e)
        {
            if (nChartControl1 != null)
            {
                NSeries series = (NSeries)nChartControl1.Charts[0].Series[0];

                series.InfinityDataPointsAppearance.MarkerMode = (InfinityDataPointsMarkerMode)MarkerModeCombo.SelectedIndex;

                nChartControl1.Refresh();
            }
        }
Пример #25
0
        private void MarkerStyleButton_Click(object sender, System.EventArgs e)
        {
            NMarkerStyle markerStyleResult;
            NSeries      series = (NSeries)nChartControl1.Charts[0].Series[0];

            if (NMarkerStyleTypeEditor.Edit(series.MarkerStyle, out markerStyleResult))
            {
                series.MarkerStyle = markerStyleResult;
                nChartControl1.Refresh();
            }
        }
Пример #26
0
        private void LineShadowButton_Click(object sender, System.EventArgs e)
        {
            NShadowStyle shadowStyleResult;
            NSeries      series = (NSeries)nChartControl1.Charts[0].Series[0];

            if (NShadowStyleTypeEditor.Edit(series.ShadowStyle, out shadowStyleResult))
            {
                series.ShadowStyle = shadowStyleResult;
                nChartControl1.Refresh();
            }
        }
        private void EDPMarkerButton_Click(object sender, System.EventArgs e)
        {
            NMarkerStyle markerStyleResult;
            NSeries      series = (NSeries)nChartControl1.Charts[0].Series[0];

            if (NMarkerStyleTypeEditor.Edit(series.InfinityDataPointsAppearance.MarkerStyle, out markerStyleResult))
            {
                series.InfinityDataPointsAppearance.MarkerStyle = markerStyleResult;
                nChartControl1.Refresh();
            }
        }
        private void FillButton_Click(object sender, System.EventArgs e)
        {
            NSeries    series = (NSeries)nChartControl1.Charts[0].Series[0];
            NFillStyle fillStyleResult;

            if (NFillStyleTypeEditor.Edit(series.EmptyDataPointsAppearance.FillStyle, out fillStyleResult))
            {
                series.EmptyDataPointsAppearance.FillStyle = fillStyleResult;
                nChartControl1.Refresh();
            }
        }
Пример #29
0
        private void GenerateYValues(int nCount)
        {
            NChart  chart  = nChartControl1.Charts[0];
            NSeries series = (NSeries)chart.Series[0];

            series.Values.Clear();

            for (int i = 0; i < nCount; i++)
            {
                series.Values.Add(5 + Random.NextDouble() * 10);
            }
        }
Пример #30
0
        private void GenerateData(int itemCount)
        {
            NChart chart = nChartControl1.Charts[0];

            int seriesCount = chart.Series.Count;

            for (int i = 0; i < seriesCount; i++)
            {
                NSeries series = (NSeries)chart.Series[i];
                series.Values.FillRandomRange(Random, itemCount, -100, 100);
            }
        }