public MainWindow() { InitializeComponent(); ThreadPool.QueueUserWorkItem(Connect); OutputChart.Series.Clear(); OutputChart.Axes.Clear(); var readseries = new ColumnSeries { Title = "Read", Background = new SolidColorBrush(Color.FromArgb(255, 0, 255, 0)) }; var writeseries = new ColumnSeries { Title = "Write", Background = new SolidColorBrush(Color.FromArgb(255, 255, 0, 0)) }; var diskaxis = new CategoryAxis { Orientation = AxisOrientation.X }; OutputChart.Axes.Add(diskaxis); var iopsaxis = new LinearAxis { Minimum = 0, Maximum = 50, Orientation = AxisOrientation.Y, Title = "IOPS", ExtendRangeToOrigin = true }; OutputChart.Axes.Add(iopsaxis); readseries.IndependentValueBinding = new Binding("Key"); readseries.DependentValueBinding = new Binding("Value"); readseries.ItemsSource = _readdata; writeseries.IndependentValueBinding = new Binding("Key"); writeseries.DependentValueBinding = new Binding("Value"); writeseries.ItemsSource = _writedata; OutputChart.Series.Add(readseries); OutputChart.Series.Add(writeseries); }
void System.Windows.Markup.IComponentConnector.Connect(int connectionId, object target) { switch (connectionId) { case 1: this.myChart = ((System.Windows.Controls.DataVisualization.Charting.Chart)(target)); return; case 2: this.lineSeries = ((System.Windows.Controls.DataVisualization.Charting.LineSeries)(target)); return; case 3: this.XLinearAxis = ((System.Windows.Controls.DataVisualization.Charting.LinearAxis)(target)); return; case 4: this.linearAxis = ((System.Windows.Controls.DataVisualization.Charting.LinearAxis)(target)); return; case 5: this.btnMarkerOn = ((System.Windows.Controls.Primitives.ToggleButton)(target)); return; } this._contentLoaded = true; }
void System.Windows.Markup.IComponentConnector.Connect(int connectionId, object target) { switch (connectionId) { case 1: this.LineChart = ((System.Windows.Controls.DataVisualization.Charting.Chart)(target)); return; case 2: this.XLinearAxis = ((System.Windows.Controls.DataVisualization.Charting.LinearAxis)(target)); return; case 3: this.YLinearAxis = ((System.Windows.Controls.DataVisualization.Charting.LinearAxis)(target)); return; case 4: this.SimPlotLineSeries = ((System.Windows.Controls.DataVisualization.Charting.LineSeries)(target)); return; case 5: this.RtmPlotLineSeries = ((System.Windows.Controls.DataVisualization.Charting.LineSeries)(target)); return; } this._contentLoaded = true; }
public RegionFieldWindow(string parameterName, IParameter1DimensionalTypeless<double> parameterToDisplay) { InitializeComponent(); _parameter = parameterToDisplay; _parameterName = parameterName; //plotterHeader.Content = parameterName; //var l = new System.Windows.Controls.DataVisualization.Charting.LineSeries(); var data = from p in parameterToDisplay.GetEnumerator() where !Double.IsNaN(p.Value) && !double.IsInfinity(p.Value) select new Tuple<string, double>(p.Dimension1.ToString(), p.Value); chart1.Title = parameterName; var mySeries = new ColumnSeries(); mySeries.IndependentValueBinding = new Binding("Item1"); mySeries.DependentValueBinding = new Binding("Item2"); mySeries.ItemsSource = data; chart1.Series.Add(mySeries); var axis = new LinearAxis(); axis.Orientation = AxisOrientation.Y; axis.Minimum = data.Select(i => i.Item2).Min(); axis.Maximum = data.Select(i => i.Item2).Max(); chart1.Axes.Add(axis); }
public AxisPointLinear(Chart xChart, LinearAxis xAxis, Point xPoint, double xMin, double xMax) : base(xChart, xAxis, xPoint) { Min = xMin; Max = xMax; Range = xMax - xMin; Axis = xAxis; MouseAxisValueAbsolute = xMin + (MouseAxisValueRelative * Range); } // constructor
/// <summary> /// Acquires a dependent axis suitable for use with the data values of the series. /// </summary> /// <returns>Axis instance.</returns> protected override IAxis AcquireDependentAxis() { IAxis dependentAxis = SeriesHost.Axes .Where(a => (a.Orientation == DependentAxisOrientation) && (a is IRangeAxis) && DataItems.Any() && (a.CanPlot(DataItems.First().ActualDependentValue))) .FirstOrDefault(); if (null == dependentAxis) { LinearAxis linearAxis = new LinearAxis { Orientation = DependentAxisOrientation, ShowGridLines = true }; if (IsStacked100) { Style style = new Style(typeof(AxisLabel)); style.Setters.Add(new Setter(AxisLabel.StringFormatProperty, "{0}%")); linearAxis.AxisLabelStyle = style; } dependentAxis = linearAxis; } return dependentAxis; }
private void ChildWindow_Loaded(object sender, RoutedEventArgs e) { Size(); service.GetStatisticsDataCompleted += new EventHandler<GetStatisticsDataCompletedEventArgs>(service_GetStatisticsDataCompleted); //根据起始时间和结束时间自动设置时间粒度 SetTimeSpan(); //初始化x轴 DateTimeAxis dateAxis = new DateTimeAxis() { Orientation = AxisOrientation.X, Title = TimePoint, FontStyle = FontStyles.Normal, FontSize = 10f, ShowGridLines = true, }; dateAxis.GridLineStyle = new Style(typeof(Line)); dateAxis.GridLineStyle.Setters.Add(new Setter(Line.StrokeThicknessProperty, 1)); dateAxis.GridLineStyle.Setters.Add(new Setter(Line.StrokeProperty, "LightGray")); //初始化y轴 LinearAxis valueAxis = new LinearAxis() { Orientation = AxisOrientation.Y, Title = DataVolume, FontStyle = FontStyles.Normal, FontSize = 12f, ShowGridLines = true, }; valueAxis.GridLineStyle = new Style(typeof(Line)); valueAxis.GridLineStyle.Setters.Add(new Setter(Line.StrokeProperty, "LightGray")); valueAxis.GridLineStyle.Setters.Add(new Setter(Line.StrokeThicknessProperty, 1)); Chart.Axes.Clear(); Chart.Axes.Add(dateAxis); Chart.Axes.Add(valueAxis); //加载数据 ShowData(); }
public Chart(List<ChartData> chartDatas, string valueName) { InitializeComponent(); LinearAxis xAxis = new LinearAxis(); xAxis.Title = Headers.Year; xAxis.Interval = 1; xAxis.Orientation = AxisOrientation.X; LinearAxis yAxis = new LinearAxis(); yAxis.Title = valueName; yAxis.Orientation = AxisOrientation.Y; Charts.Axes.Add(xAxis); Charts.Axes.Add(yAxis); foreach (var data in chartDatas) { var newChart = new ColumnSeries(); newChart.DependentValuePath = "Y"; newChart.IndependentValuePath = "X"; newChart.Title = data.Name; newChart.ItemsSource = data.Points; newChart.Refresh(); Charts.Series.Add(newChart); } }
void System.Windows.Markup.IComponentConnector.Connect(int connectionId, object target) { switch (connectionId) { case 1: this.LineChart = ((System.Windows.Controls.DataVisualization.Charting.Chart)(target)); #line 12 "..\..\..\MonitoringChild.xaml" this.LineChart.MouseWheel += new System.Windows.Input.MouseWheelEventHandler(this.LineChart_MouseWheel); #line default #line hidden #line 12 "..\..\..\MonitoringChild.xaml" this.LineChart.MouseMove += new System.Windows.Input.MouseEventHandler(this.LineChart_MouseMove); #line default #line hidden #line 12 "..\..\..\MonitoringChild.xaml" this.LineChart.Unloaded += new System.Windows.RoutedEventHandler(this.LineChart_Unloaded); #line default #line hidden return; case 2: this.XLinearAxis = ((System.Windows.Controls.DataVisualization.Charting.LinearAxis)(target)); #line 14 "..\..\..\MonitoringChild.xaml" this.XLinearAxis.MouseWheel += new System.Windows.Input.MouseWheelEventHandler(this.XLinearAxis_MouseWheel); #line default #line hidden return; case 3: this.YLinearAxis = ((System.Windows.Controls.DataVisualization.Charting.LinearAxis)(target)); #line 15 "..\..\..\MonitoringChild.xaml" this.YLinearAxis.MouseWheel += new System.Windows.Input.MouseWheelEventHandler(this.YLinearAxis_MouseWheel); #line default #line hidden return; case 4: this.SimPlotLineSeries = ((System.Windows.Controls.DataVisualization.Charting.LineSeries)(target)); return; case 5: this.RtmPlotLineSeries = ((System.Windows.Controls.DataVisualization.Charting.LineSeries)(target)); return; case 6: this.ResetButton = ((System.Windows.Controls.Button)(target)); #line 41 "..\..\..\MonitoringChild.xaml" this.ResetButton.Click += new System.Windows.RoutedEventHandler(this.ResetButton_Click); #line default #line hidden return; case 7: this.MarkCheckBox = ((System.Windows.Controls.CheckBox)(target)); #line 44 "..\..\..\MonitoringChild.xaml" this.MarkCheckBox.Checked += new System.Windows.RoutedEventHandler(this.MarkCheckBox_Checked); #line default #line hidden #line 44 "..\..\..\MonitoringChild.xaml" this.MarkCheckBox.Unchecked += new System.Windows.RoutedEventHandler(this.MarkCheckBox_Unchecked); #line default #line hidden return; } this._contentLoaded = true; }
void System.Windows.Markup.IComponentConnector.Connect(int connectionId, object target) { switch (connectionId) { case 1: this.gridMain = ((System.Windows.Controls.Grid)(target)); return; case 2: this.gridSK1 = ((System.Windows.Controls.Grid)(target)); return; case 3: this.spTextBlock = ((System.Windows.Controls.StackPanel)(target)); return; case 4: this.imgSK = ((System.Windows.Controls.Image)(target)); return; case 5: this.SKHistory = ((System.Windows.Controls.DataVisualization.Charting.Chart)(target)); return; case 6: this.YAxisSK1 = ((System.Windows.Controls.DataVisualization.Charting.LinearAxis)(target)); return; case 7: this.XAxisSK1 = ((System.Windows.Controls.DataVisualization.Charting.DateTimeAxis)(target)); return; case 8: this.YLHistory = ((System.Windows.Controls.DataVisualization.Charting.Chart)(target)); return; case 9: this.YAxisYL1 = ((System.Windows.Controls.DataVisualization.Charting.LinearAxis)(target)); return; case 10: this.XAxisYL1 = ((System.Windows.Controls.DataVisualization.Charting.DateTimeAxis)(target)); return; case 11: this.gridSK2 = ((System.Windows.Controls.Grid)(target)); return; case 12: this.spTextBlockSK2 = ((System.Windows.Controls.StackPanel)(target)); return; case 13: this.imgSK2 = ((System.Windows.Controls.Image)(target)); return; case 14: this.SK2History = ((System.Windows.Controls.DataVisualization.Charting.Chart)(target)); return; case 15: this.YAxisSK2 = ((System.Windows.Controls.DataVisualization.Charting.LinearAxis)(target)); return; case 16: this.XAxisSK2 = ((System.Windows.Controls.DataVisualization.Charting.DateTimeAxis)(target)); return; case 17: this.YL2History = ((System.Windows.Controls.DataVisualization.Charting.Chart)(target)); return; case 18: this.YAxisYL2 = ((System.Windows.Controls.DataVisualization.Charting.LinearAxis)(target)); return; case 19: this.XAxisYL2 = ((System.Windows.Controls.DataVisualization.Charting.DateTimeAxis)(target)); return; case 20: this.gridSK3 = ((System.Windows.Controls.Grid)(target)); return; case 21: this.spTextBlockSK3 = ((System.Windows.Controls.StackPanel)(target)); return; case 22: this.imgSK3 = ((System.Windows.Controls.Image)(target)); return; case 23: this.SK3History = ((System.Windows.Controls.DataVisualization.Charting.Chart)(target)); return; case 24: this.YAxisSK3 = ((System.Windows.Controls.DataVisualization.Charting.LinearAxis)(target)); return; case 25: this.XAxisSK3 = ((System.Windows.Controls.DataVisualization.Charting.DateTimeAxis)(target)); return; case 26: this.YL3History = ((System.Windows.Controls.DataVisualization.Charting.Chart)(target)); return; case 27: this.YAxisYL3 = ((System.Windows.Controls.DataVisualization.Charting.LinearAxis)(target)); return; case 28: this.XAxisYL3 = ((System.Windows.Controls.DataVisualization.Charting.DateTimeAxis)(target)); return; } this._contentLoaded = true; }
public void InitializeComponent() { if (!this._contentLoaded) { this._contentLoaded = true; Application.LoadComponent(this, new Uri("/BEPB;component/MainPage.xaml", UriKind.Relative)); this.LayoutRoot = (Grid) base.FindName("LayoutRoot"); this.Actually = (Image) base.FindName("Actually"); this.Quality = (Image) base.FindName("Quality"); this.Forecast = (Image) base.FindName("Forecast"); this.Support = (Image) base.FindName("Support"); this.Mobile = (Image) base.FindName("Mobile"); this.busyIndicator = (BusyIndicator) base.FindName("busyIndicator"); this.map = (CMap) base.FindName("map"); this.epbMapTileLayer = (MapTileLayer) base.FindName("epbMapTileLayer"); this.MapMask = (MapLayer) base.FindName("MapMask"); this.Districts = (MapLayer) base.FindName("Districts"); this.CityCenterBorder2 = (MapPolygon) base.FindName("CityCenterBorder2"); this.HuaiRou = (MapPolygon) base.FindName("HuaiRou"); this.MiYun = (MapPolygon) base.FindName("MiYun"); this.YanQing = (MapPolygon) base.FindName("YanQing"); this.ChangPing = (MapPolygon) base.FindName("ChangPing"); this.PingGu = (MapPolygon) base.FindName("PingGu"); this.ShunYi = (MapPolygon) base.FindName("ShunYi"); this.MenTouGou = (MapPolygon) base.FindName("MenTouGou"); this.HaiDian = (MapPolygon) base.FindName("HaiDian"); this.ChaoYang = (MapPolygon) base.FindName("ChaoYang"); this.TongZhou = (MapPolygon) base.FindName("TongZhou"); this.ShiJingShan = (MapPolygon) base.FindName("ShiJingShan"); this.DongCheng = (MapPolygon) base.FindName("DongCheng"); this.XiCheng = (MapPolygon) base.FindName("XiCheng"); this.FangShan = (MapPolygon) base.FindName("FangShan"); this.FengTai = (MapPolygon) base.FindName("FengTai"); this.DaXing = (MapPolygon) base.FindName("DaXing"); this.DistrictsName = (MapLayer) base.FindName("DistrictsName"); this.东城区Name = (Pushpin) base.FindName("东城区Name"); this.西城区Name = (Pushpin) base.FindName("西城区Name"); this.朝阳区Name = (Pushpin) base.FindName("朝阳区Name"); this.丰台区Name = (Pushpin) base.FindName("丰台区Name"); this.石景山区Name = (Pushpin) base.FindName("石景山区Name"); this.海淀区Name = (Pushpin) base.FindName("海淀区Name"); this.门头沟区Name = (Pushpin) base.FindName("门头沟区Name"); this.房山区Name = (Pushpin) base.FindName("房山区Name"); this.通州区Name = (Pushpin) base.FindName("通州区Name"); this.顺义区Name = (Pushpin) base.FindName("顺义区Name"); this.昌平区Name = (Pushpin) base.FindName("昌平区Name"); this.大兴区Name = (Pushpin) base.FindName("大兴区Name"); this.怀柔区Name = (Pushpin) base.FindName("怀柔区Name"); this.平谷区Name = (Pushpin) base.FindName("平谷区Name"); this.密云县Name = (Pushpin) base.FindName("密云县Name"); this.延庆县Name = (Pushpin) base.FindName("延庆县Name"); this.Five = (MapLayer) base.FindName("Five"); this.NorthEastBorder = (MapPolygon) base.FindName("NorthEastBorder"); this.NorthWestBorder = (MapPolygon) base.FindName("NorthWestBorder"); this.SouthWestBorder = (MapPolygon) base.FindName("SouthWestBorder"); this.CityCenterBorder = (MapPolygon) base.FindName("CityCenterBorder"); this.SouthEastBorder = (MapPolygon) base.FindName("SouthEastBorder"); this.NorthEast = (MapPolygon) base.FindName("NorthEast"); this.NorthWest = (MapPolygon) base.FindName("NorthWest"); this.SouthWest = (MapPolygon) base.FindName("SouthWest"); this.CityCenter = (MapPolygon) base.FindName("CityCenter"); this.SouthEast = (MapPolygon) base.FindName("SouthEast"); this.NorthEastText = (Pushpin) base.FindName("NorthEastText"); this.NorthWestText = (Pushpin) base.FindName("NorthWestText"); this.CityCenterText = (Pushpin) base.FindName("CityCenterText"); this.SouthEastText = (Pushpin) base.FindName("SouthEastText"); this.SouthWestText = (Pushpin) base.FindName("SouthWestText"); this.MapStations = (MapLayer) base.FindName("MapStations"); this.NavigationCtrl = (BEPB.NavigationCtrl) base.FindName("NavigationCtrl"); this.btn_yx = (ToggleButton) base.FindName("btn_yx"); this.btn_dx = (ToggleButton) base.FindName("btn_dx"); this.btn_sl = (ToggleButton) base.FindName("btn_sl"); this.btnAlertMessage = (Button) base.FindName("btnAlertMessage"); this.wrwtl = (Image) base.FindName("wrwtl"); this.wrwtlGrid = (Grid) base.FindName("wrwtlGrid"); this.wrwtlTitle = (TextBlock) base.FindName("wrwtlTitle"); this.wrwtlRect1 = (Rectangle) base.FindName("wrwtlRect1"); this.wrwtlRect2 = (Rectangle) base.FindName("wrwtlRect2"); this.wrwtlRect3 = (Rectangle) base.FindName("wrwtlRect3"); this.wrwtlRect4 = (Rectangle) base.FindName("wrwtlRect4"); this.wrwtlRect5 = (Rectangle) base.FindName("wrwtlRect5"); this.wrwtlRect6 = (Rectangle) base.FindName("wrwtlRect6"); this.wrwtlData = (TextBlock) base.FindName("wrwtlData"); this.p_bottom_aqi = (Image) base.FindName("p_bottom_aqi"); this.p_bottom_aqiGrid = (StackPanel) base.FindName("p_bottom_aqiGrid"); this.aqiEllipse1 = (Ellipse) base.FindName("aqiEllipse1"); this.aqiEllipse2 = (Ellipse) base.FindName("aqiEllipse2"); this.aqiEllipse3 = (Ellipse) base.FindName("aqiEllipse3"); this.aqiEllipse4 = (Ellipse) base.FindName("aqiEllipse4"); this.aqiEllipse5 = (Ellipse) base.FindName("aqiEllipse5"); this.aqiEllipse6 = (Ellipse) base.FindName("aqiEllipse6"); this.p_aqi_detail = (Image) base.FindName("p_aqi_detail"); this.dgAQIDetailText = (DataGrid) base.FindName("dgAQIDetailText"); this.RenderImagesListBox = (ListBox) base.FindName("RenderImagesListBox"); this.LeftFrame = (Grid) base.FindName("LeftFrame"); this.Expand = (Storyboard) base.FindName("Expand"); this.LeftFrameExpandAnimation = (DoubleAnimation) base.FindName("LeftFrameExpandAnimation"); this.LeftFrameNewExpand = (Storyboard) base.FindName("LeftFrameNewExpand"); this.ForecastExpandAnimation = (DoubleAnimation) base.FindName("ForecastExpandAnimation"); this.ActuallyExpandAnimation = (DoubleAnimation) base.FindName("ActuallyExpandAnimation"); this.QualityExpandAnimation = (DoubleAnimation) base.FindName("QualityExpandAnimation"); this.ActuallyFrame_Old = (Grid) base.FindName("ActuallyFrame_Old"); this.Tab = (TabControl) base.FindName("Tab"); this.AQITabItem = (TabItem) base.FindName("AQITabItem"); this.AQITabItemGrid = (Grid) base.FindName("AQITabItemGrid"); this.dgAQI_Old = (DataGrid) base.FindName("dgAQI_Old"); this.WRWTabItem = (TabItem) base.FindName("WRWTabItem"); this.WRWTabItemGrid = (Grid) base.FindName("WRWTabItemGrid"); this.LeftFrameTopRectangle_Old = (Rectangle) base.FindName("LeftFrameTopRectangle_Old"); this.dgWRW_Old = (DataGrid) base.FindName("dgWRW_Old"); this.lbl_DateTime_Old = (Run) base.FindName("lbl_DateTime_Old"); this.wrwButtonsBorder_Old = (Border) base.FindName("wrwButtonsBorder_Old"); this.wrwButtons_Old = (Canvas) base.FindName("wrwButtons_Old"); this.PM25Storyboard_Old = (Storyboard) base.FindName("PM25Storyboard_Old"); this.PM10Storyboard_Old = (Storyboard) base.FindName("PM10Storyboard_Old"); this.SO2Storyboard_Old = (Storyboard) base.FindName("SO2Storyboard_Old"); this.NO2Storyboard_Old = (Storyboard) base.FindName("NO2Storyboard_Old"); this.O31Storyboard_Old = (Storyboard) base.FindName("O31Storyboard_Old"); this.COStoryboard_Old = (Storyboard) base.FindName("COStoryboard_Old"); this.wrw_pm25_Old = (ToggleButton) base.FindName("wrw_pm25_Old"); this.wrw_pm10_Old = (ToggleButton) base.FindName("wrw_pm10_Old"); this.wrw_so2_Old = (ToggleButton) base.FindName("wrw_so2_Old"); this.wrw_no2_Old = (ToggleButton) base.FindName("wrw_no2_Old"); this.wrw_o31_Old = (ToggleButton) base.FindName("wrw_o31_Old"); this.wrw_co_Old = (ToggleButton) base.FindName("wrw_co_Old"); this.ActuallyFrame = (Border) base.FindName("ActuallyFrame"); this.TabDivActually = (Grid) base.FindName("TabDivActually"); this.ActuallyLeftTabItem = (ColumnDefinition) base.FindName("ActuallyLeftTabItem"); this.ActuallyRightTabItem = (ColumnDefinition) base.FindName("ActuallyRightTabItem"); this.ActuallyPanelHeader = (Grid) base.FindName("ActuallyPanelHeader"); this.btnActuallyExpand = (PushedImageButton) base.FindName("btnActuallyExpand"); this.lbl_DateTime_WRW = (Run) base.FindName("lbl_DateTime_WRW"); this.LeftFrameWrwCollapsedBottomRectangle = (Rectangle) base.FindName("LeftFrameWrwCollapsedBottomRectangle"); this.ActuallyGrid = (Grid) base.FindName("ActuallyGrid"); this.LeftFrameTopRectangle = (Rectangle) base.FindName("LeftFrameTopRectangle"); this.dgWRW = (DataGrid) base.FindName("dgWRW"); this.wrwButtonsBorder = (Border) base.FindName("wrwButtonsBorder"); this.wrwButtons = (Canvas) base.FindName("wrwButtons"); this.PM25Storyboard = (Storyboard) base.FindName("PM25Storyboard"); this.PM10Storyboard = (Storyboard) base.FindName("PM10Storyboard"); this.SO2Storyboard = (Storyboard) base.FindName("SO2Storyboard"); this.NO2Storyboard = (Storyboard) base.FindName("NO2Storyboard"); this.O31Storyboard = (Storyboard) base.FindName("O31Storyboard"); this.COStoryboard = (Storyboard) base.FindName("COStoryboard"); this.wrw_pm25 = (ToggleButton) base.FindName("wrw_pm25"); this.wrw_so2 = (ToggleButton) base.FindName("wrw_so2"); this.wrw_no2 = (ToggleButton) base.FindName("wrw_no2"); this.wrw_o31 = (ToggleButton) base.FindName("wrw_o31"); this.wrw_co = (ToggleButton) base.FindName("wrw_co"); this.wrw_pm10 = (ToggleButton) base.FindName("wrw_pm10"); this.AirQualityFrame = (Border) base.FindName("AirQualityFrame"); this.TabDivQuality = (Grid) base.FindName("TabDivQuality"); this.QualityHeader = (Grid) base.FindName("QualityHeader"); this.QualityLeftTabItem = (ColumnDefinition) base.FindName("QualityLeftTabItem"); this.QualityRightTabItem = (ColumnDefinition) base.FindName("QualityRightTabItem"); this.QualityPanelHeader = (Grid) base.FindName("QualityPanelHeader"); this.btnQualityExpand = (PushedImageButton) base.FindName("btnQualityExpand"); this.QualityGrid = (Grid) base.FindName("QualityGrid"); this.lbl_DateTime_AQI = (Run) base.FindName("lbl_DateTime_AQI"); this.dgAQIGrid = (Grid) base.FindName("dgAQIGrid"); this.dgAQI = (DataGrid) base.FindName("dgAQI"); this.DayForecastPanel = (Border) base.FindName("DayForecastPanel"); this.TabDiv = (Grid) base.FindName("TabDiv"); this.yb_jl4_2 = (Grid) base.FindName("yb_jl4_2"); this.ForecaseLeftTabItem = (ColumnDefinition) base.FindName("ForecaseLeftTabItem"); this.ForecaseRightTabItem = (ColumnDefinition) base.FindName("ForecaseRightTabItem"); this.ForecastPanelHeader = (Grid) base.FindName("ForecastPanelHeader"); this.btnForecastExpand = (PushedImageButton) base.FindName("btnForecastExpand"); this.ForecastGridBorder = (Border) base.FindName("ForecastGridBorder"); this.forecastGrid = (DataGrid) base.FindName("forecastGrid"); this.forecastMsg = (Grid) base.FindName("forecastMsg"); this.ExpandButtonGrid = (Grid) base.FindName("ExpandButtonGrid"); this.Line1 = (Rectangle) base.FindName("Line1"); this.Line2 = (Rectangle) base.FindName("Line2"); this.Line3 = (Rectangle) base.FindName("Line3"); this.Line4 = (Rectangle) base.FindName("Line4"); this.btnExpand = (ToggleButton) base.FindName("btnExpand"); this.btnExpandTooTip = (TextBlock) base.FindName("btnExpandTooTip"); this.FloatWRWPopup = (FloatPopup) base.FindName("FloatWRWPopup"); this.WRWPopupBorder = (Border) base.FindName("WRWPopupBorder"); this.WRWPopupBackground = (Grid) base.FindName("WRWPopupBackground"); this.wrwqp_8 = (Grid) base.FindName("wrwqp_8"); this.wrwqp_9 = (Grid) base.FindName("wrwqp_9"); this.wrwqp_11 = (Grid) base.FindName("wrwqp_11"); this.wrwqp_12 = (Grid) base.FindName("wrwqp_12"); this.WRWChartPanel = (Grid) base.FindName("WRWChartPanel"); this.WRWExpandAnimation = (DoubleAnimation) base.FindName("WRWExpandAnimation"); this.WRWChart = (Chart) base.FindName("WRWChart"); this.WRWChartTitle = (TextBlock) base.FindName("WRWChartTitle"); this.XAxis = (DateTimeAxis) base.FindName("XAxis"); this.YAxis = (LinearAxis) base.FindName("YAxis"); this.WRWChartText = (TextBlock) base.FindName("WRWChartText"); this.wrwqp_16 = (Grid) base.FindName("wrwqp_16"); this.btnWRWExpand = (ToggleButton) base.FindName("btnWRWExpand"); this.FloatAQIPopup = (FloatPopup) base.FindName("FloatAQIPopup"); this.AQIPopupBorder = (Border) base.FindName("AQIPopupBorder"); this.AQIPopupBackground = (Grid) base.FindName("AQIPopupBackground"); this.aqi_26 = (Grid) base.FindName("aqi_26"); this.aqi_27 = (Grid) base.FindName("aqi_27"); this.aqi_28 = (Grid) base.FindName("aqi_28"); this.aqi_29 = (Grid) base.FindName("aqi_29"); this.aqi_30 = (Grid) base.FindName("aqi_30"); this.AQIPanel = (Grid) base.FindName("AQIPanel"); this.AQIExpandAnimation = (DoubleAnimation) base.FindName("AQIExpandAnimation"); this.AQIDataGrid = (DataGrid) base.FindName("AQIDataGrid"); this.AQIPopupBottom = (Grid) base.FindName("AQIPopupBottom"); this.btnAQIExpand = (ToggleButton) base.FindName("btnAQIExpand"); this.FloatForecastPopup = (FloatPopup) base.FindName("FloatForecastPopup"); this.ForecastBorder = (Border) base.FindName("ForecastBorder"); this.yb_2 = (Grid) base.FindName("yb_2"); this.ForecastPopupHeader = (Grid) base.FindName("ForecastPopupHeader"); this.ForecastNight = (Grid) base.FindName("ForecastNight"); this.ForecastNightStationName = (Grid) base.FindName("ForecastNightStationName"); this.yb_30 = (Grid) base.FindName("yb_30"); this.yb_39 = (Grid) base.FindName("yb_39"); this.yb_40 = (Grid) base.FindName("yb_40"); this.ForecastNightConent = (Grid) base.FindName("ForecastNightConent"); this.ForecastDay = (Grid) base.FindName("ForecastDay"); this.ForecastDayStationName = (Grid) base.FindName("ForecastDayStationName"); this.yb_61 = (Grid) base.FindName("yb_61"); this.yb_62 = (Grid) base.FindName("yb_62"); this.yb_65 = (Grid) base.FindName("yb_65"); this.yb_66 = (Grid) base.FindName("yb_66"); this.AlertWnd = (Marquee) base.FindName("AlertWnd"); this.MapRange = (TextBox) base.FindName("MapRange"); this.txtbWebCounts = (TextBlock) base.FindName("txtbWebCounts"); } }
public void ActualMinimumActualMaximumCorrect() { Chart chart = new Chart(); LinearAxis axis = new LinearAxis { Orientation = AxisOrientation.X, Minimum = 10, Maximum = 20 }; chart.Axes.Add(axis); ScatterSeries series = new ScatterSeries(); series.DependentValueBinding = new Binding(); series.IndependentValueBinding = new Binding(); int[] itemsSource = new int[] { 14 }; series.ItemsSource = itemsSource; chart.Series.Add(series); TestAsync( chart, () => Assert.AreEqual(axis.Minimum, axis.ActualMinimum), () => Assert.AreEqual(axis.Maximum, axis.ActualMaximum)); }
public void RemoveAxisFromEmptyChart() { Chart chart = new Chart(); LinearAxis axis = new LinearAxis { Orientation = AxisOrientation.X }; chart.Axes.Add(axis); chart.Axes.Remove(axis); }
public void CustomMinimumAndMaximumAreRespected() { Chart chart = new Chart(); LinearAxis horizontalAxis = new LinearAxis { Orientation = AxisOrientation.X, Minimum = 50, Maximum = 120 }; chart.Axes.Add(horizontalAxis); LinearAxis verticalAxis = new LinearAxis { Orientation = AxisOrientation.Y, Minimum = 40, Maximum = 130 }; chart.Axes.Add(verticalAxis); ScatterSeries series = new ScatterSeries(); series.IndependentValueBinding = new Binding(); series.ItemsSource = new int[] { 100 }; chart.Series.Add(series); TestAsync( chart, () => Assert.AreEqual(50, horizontalAxis.ActualMinimum), () => Assert.AreEqual(120, horizontalAxis.ActualMaximum), () => Assert.AreEqual(40, verticalAxis.ActualMinimum), () => Assert.AreEqual(130, verticalAxis.ActualMaximum)); }
private void RenderFinishScatterChart(List<NumericDataValue> dataValues, StatisticsRepository.LinearRegression.LinearRegressionResults results, NumericDataValue maxValue, NumericDataValue minValue) { Chart chart = new Chart(); chart.Loaded += new RoutedEventHandler(chart_Loaded); chart.BorderThickness = new Thickness(0); ScatterSeries series = new ScatterSeries(); LinearAxis xaxis = new LinearAxis(); xaxis.Orientation = AxisOrientation.X; xaxis.Title = cbxScatterXAxisField.SelectedItem.ToString(); series.IndependentAxis = xaxis; LinearAxis yaxis = new LinearAxis(); yaxis.Orientation = AxisOrientation.Y; yaxis.Title = cbxScatterYAxisField.SelectedItem.ToString(); series.DependentRangeAxis = yaxis; yaxis.ShowGridLines = (bool)checkboxShowHorizontalGridLines.IsChecked; series.IndependentValuePath = "IndependentValue"; series.DependentValuePath = "DependentValue"; series.ItemsSource = dataValues; chart.Series.Add(series); if (results.variables != null) { decimal coefficient = Convert.ToDecimal(results.variables[0].coefficient); decimal constant = Convert.ToDecimal(results.variables[1].coefficient); NumericDataValue newMaxValue = new NumericDataValue(); newMaxValue.IndependentValue = maxValue.IndependentValue + 1; newMaxValue.DependentValue = (coefficient * maxValue.IndependentValue) + constant; NumericDataValue newMinValue = new NumericDataValue(); newMinValue.IndependentValue = minValue.IndependentValue - 1; newMinValue.DependentValue = (coefficient * minValue.IndependentValue) + constant; List<NumericDataValue> regresValues = new List<NumericDataValue>(); regresValues.Add(newMinValue); regresValues.Add(newMaxValue); LineSeries regression = new LineSeries(); regression.DependentRangeAxis = yaxis; regression.IndependentAxis = xaxis; regression.IndependentValuePath = "IndependentValue"; regression.DependentValuePath = "DependentValue"; regression.ItemsSource = regresValues; chart.Series.Add(regression); series.LegendItems.Clear(); regression.LegendItems.Clear(); chart.Height = 600; if (dataValues.Count > 20) chart.Width = dataValues.Count * 25; else chart.Width = 800; pnlMain.Children.Clear(); pnlMain.Children.Add(chart); } else { pnlMain.Children.Clear(); RenderFinishWithWarning("Insufficient data to produce this chart."); } //RenderFinish(); }
void System.Windows.Markup.IComponentConnector.Connect(int connectionId, object target) { switch (connectionId) { case 1: this.teamsDataGrid = ((System.Windows.Controls.DataGrid)(target)); return; case 2: this.playersDataGrid = ((System.Windows.Controls.DataGrid)(target)); return; case 3: this.nextWeekButton = ((System.Windows.Controls.Button)(target)); #line 24 "..\..\Leaderboard.xaml" this.nextWeekButton.Click += new System.Windows.RoutedEventHandler(this.NextWeekClick); #line default #line hidden return; case 4: this.prevWeekButton = ((System.Windows.Controls.Button)(target)); #line 25 "..\..\Leaderboard.xaml" this.prevWeekButton.Click += new System.Windows.RoutedEventHandler(this.PrevWeekClick); #line default #line hidden return; case 5: this.LineGraph = ((System.Windows.Controls.Button)(target)); #line 26 "..\..\Leaderboard.xaml" this.LineGraph.Click += new System.Windows.RoutedEventHandler(this.LineGraph_Click); #line default #line hidden return; case 6: this.BarGraph = ((System.Windows.Controls.Button)(target)); #line 27 "..\..\Leaderboard.xaml" this.BarGraph.Click += new System.Windows.RoutedEventHandler(this.BarGraph_Click); #line default #line hidden return; case 7: this.tournamentButton = ((System.Windows.Controls.Button)(target)); #line 28 "..\..\Leaderboard.xaml" this.tournamentButton.Click += new System.Windows.RoutedEventHandler(this.TournamentBracketClick); #line default #line hidden return; case 8: this.lineChart = ((System.Windows.Controls.DataVisualization.Charting.Chart)(target)); return; case 9: this.YAxis = ((System.Windows.Controls.DataVisualization.Charting.LinearAxis)(target)); return; case 10: this.lineZoom = ((System.Windows.Controls.Slider)(target)); #line 44 "..\..\Leaderboard.xaml" this.lineZoom.ValueChanged += new System.Windows.RoutedPropertyChangedEventHandler <double>(this.lineZoom_ValueChanged); #line default #line hidden return; case 11: this.allBar = ((System.Windows.Controls.Grid)(target)); return; case 12: this.barCol1 = ((System.Windows.Controls.StackPanel)(target)); return; case 13: this.b1 = ((System.Windows.Controls.ProgressBar)(target)); return; case 14: this.b2 = ((System.Windows.Controls.ProgressBar)(target)); return; case 15: this.b3 = ((System.Windows.Controls.ProgressBar)(target)); return; case 16: this.b4 = ((System.Windows.Controls.ProgressBar)(target)); return; case 17: this.b5 = ((System.Windows.Controls.ProgressBar)(target)); return; case 18: this.b6 = ((System.Windows.Controls.ProgressBar)(target)); return; case 19: this.b7 = ((System.Windows.Controls.ProgressBar)(target)); return; case 20: this.b8 = ((System.Windows.Controls.ProgressBar)(target)); return; case 21: this.b9 = ((System.Windows.Controls.ProgressBar)(target)); return; case 22: this.b10 = ((System.Windows.Controls.ProgressBar)(target)); return; case 23: this.barCol3 = ((System.Windows.Controls.StackPanel)(target)); return; case 24: this.n1 = ((System.Windows.Controls.TextBlock)(target)); return; case 25: this.n2 = ((System.Windows.Controls.TextBlock)(target)); return; case 26: this.n3 = ((System.Windows.Controls.TextBlock)(target)); return; case 27: this.n4 = ((System.Windows.Controls.TextBlock)(target)); return; case 28: this.n5 = ((System.Windows.Controls.TextBlock)(target)); return; case 29: this.n6 = ((System.Windows.Controls.TextBlock)(target)); return; case 30: this.n7 = ((System.Windows.Controls.TextBlock)(target)); return; case 31: this.n8 = ((System.Windows.Controls.TextBlock)(target)); return; case 32: this.n9 = ((System.Windows.Controls.TextBlock)(target)); return; case 33: this.n10 = ((System.Windows.Controls.TextBlock)(target)); return; case 34: this.barCol2 = ((System.Windows.Controls.StackPanel)(target)); return; case 35: this.s1 = ((System.Windows.Controls.TextBlock)(target)); return; case 36: this.s2 = ((System.Windows.Controls.TextBlock)(target)); return; case 37: this.s3 = ((System.Windows.Controls.TextBlock)(target)); return; case 38: this.s4 = ((System.Windows.Controls.TextBlock)(target)); return; case 39: this.s5 = ((System.Windows.Controls.TextBlock)(target)); return; case 40: this.s6 = ((System.Windows.Controls.TextBlock)(target)); return; case 41: this.s7 = ((System.Windows.Controls.TextBlock)(target)); return; case 42: this.s8 = ((System.Windows.Controls.TextBlock)(target)); return; case 43: this.s9 = ((System.Windows.Controls.TextBlock)(target)); return; case 44: this.s10 = ((System.Windows.Controls.TextBlock)(target)); return; } this._contentLoaded = true; }
/// <summary> /// /// </summary> /// <param name="sender"></param> /// <param name="e"></param> void dbCol_GetRecordsCompleted(object sender, GetRecordsCompletedEventArgs e) { if (e.Error == null) { List<EstCol> estCols = GenerateColData(e.Result); Dictionary<string, ColChart> ColValue = new Dictionary<string, ColChart>(); ColChart chart; foreach (EstCol estcol in estCols) { if (!ColValue.ContainsKey(estcol.Nm)) ColValue.Add(estcol.Nm, new ColChart() { Title = estcol.Nm, ItemSource = new List<EstCol> { new EstCol() { Amount = estcol.Amount, Month = estcol.Month } }, }); else { chart = ColValue[estcol.Nm]; List<EstCol> amt = chart.ItemSource; amt.Add(new EstCol() { Amount = estcol.Amount, Month = estcol.Month }); } } pieChart3.Series.Clear(); foreach (KeyValuePair<string, ColChart> kvp in ColValue) { DataPointSeries series = new ColumnSeries(); series.Title = (kvp.Value).Title; series.ItemsSource = (kvp.Value).ItemSource; series.DependentValuePath = "Amount"; series.IndependentValuePath = "Month"; pieChart3.Series.Add(series); } CategoryAxis xAxis = new CategoryAxis(); xAxis.Title = "月(" + dateFrom.ToString("yyyy/MM/dd") + " ~ " + dateTo.ToString("yyyy/MM/dd") + ")"; xAxis.SortOrder = CategorySortOrder.Ascending; xAxis.Orientation = AxisOrientation.X; pieChart3.Axes.Add(xAxis); LinearAxis yAxis = new LinearAxis(); yAxis.Title = "金額(万)"; yAxis.Orientation = AxisOrientation.Y; pieChart3.Axes.Add(yAxis); } }
/// <summary> /// IntervalProperty property changed handler. /// </summary> /// <param name="d">LinearAxis that changed its Interval.</param> /// <param name="e">Event arguments.</param> private static void OnIntervalPropertyChanged(DependencyObject d, DependencyPropertyChangedEventArgs e) { LinearAxis source = (LinearAxis)d; source.OnIntervalPropertyChanged(); }
void System.Windows.Markup.IComponentConnector.Connect(int connectionId, object target) { switch (connectionId) { case 1: this.teamsDataGrid = ((System.Windows.Controls.DataGrid)(target)); return; case 2: this.playersDataGrid = ((System.Windows.Controls.DataGrid)(target)); return; case 3: this.nextWeekButton = ((System.Windows.Controls.Button)(target)); #line 24 "..\..\Leaderboard.xaml" this.nextWeekButton.Click += new System.Windows.RoutedEventHandler(this.NextWeekClick); #line default #line hidden return; case 4: this.prevWeekButton = ((System.Windows.Controls.Button)(target)); #line 25 "..\..\Leaderboard.xaml" this.prevWeekButton.Click += new System.Windows.RoutedEventHandler(this.PrevWeekClick); #line default #line hidden return; case 5: this.LineGraph = ((System.Windows.Controls.Button)(target)); #line 26 "..\..\Leaderboard.xaml" this.LineGraph.Click += new System.Windows.RoutedEventHandler(this.LineGraph_Click); #line default #line hidden return; case 6: this.BarGraph = ((System.Windows.Controls.Button)(target)); #line 27 "..\..\Leaderboard.xaml" this.BarGraph.Click += new System.Windows.RoutedEventHandler(this.BarGraph_Click); #line default #line hidden return; case 7: this.tournamentButton = ((System.Windows.Controls.Button)(target)); #line 28 "..\..\Leaderboard.xaml" this.tournamentButton.Click += new System.Windows.RoutedEventHandler(this.TournamentBracketClick); #line default #line hidden return; case 8: this.lineChart = ((System.Windows.Controls.DataVisualization.Charting.Chart)(target)); return; case 9: this.YAxis = ((System.Windows.Controls.DataVisualization.Charting.LinearAxis)(target)); return; case 10: this.lineZoom = ((System.Windows.Controls.Slider)(target)); #line 44 "..\..\Leaderboard.xaml" this.lineZoom.ValueChanged += new System.Windows.RoutedPropertyChangedEventHandler<double>(this.lineZoom_ValueChanged); #line default #line hidden return; case 11: this.allBar = ((System.Windows.Controls.Grid)(target)); return; case 12: this.barCol1 = ((System.Windows.Controls.StackPanel)(target)); return; case 13: this.b1 = ((System.Windows.Controls.ProgressBar)(target)); return; case 14: this.b2 = ((System.Windows.Controls.ProgressBar)(target)); return; case 15: this.b3 = ((System.Windows.Controls.ProgressBar)(target)); return; case 16: this.b4 = ((System.Windows.Controls.ProgressBar)(target)); return; case 17: this.b5 = ((System.Windows.Controls.ProgressBar)(target)); return; case 18: this.b6 = ((System.Windows.Controls.ProgressBar)(target)); return; case 19: this.b7 = ((System.Windows.Controls.ProgressBar)(target)); return; case 20: this.b8 = ((System.Windows.Controls.ProgressBar)(target)); return; case 21: this.b9 = ((System.Windows.Controls.ProgressBar)(target)); return; case 22: this.b10 = ((System.Windows.Controls.ProgressBar)(target)); return; case 23: this.barCol3 = ((System.Windows.Controls.StackPanel)(target)); return; case 24: this.n1 = ((System.Windows.Controls.TextBlock)(target)); return; case 25: this.n2 = ((System.Windows.Controls.TextBlock)(target)); return; case 26: this.n3 = ((System.Windows.Controls.TextBlock)(target)); return; case 27: this.n4 = ((System.Windows.Controls.TextBlock)(target)); return; case 28: this.n5 = ((System.Windows.Controls.TextBlock)(target)); return; case 29: this.n6 = ((System.Windows.Controls.TextBlock)(target)); return; case 30: this.n7 = ((System.Windows.Controls.TextBlock)(target)); return; case 31: this.n8 = ((System.Windows.Controls.TextBlock)(target)); return; case 32: this.n9 = ((System.Windows.Controls.TextBlock)(target)); return; case 33: this.n10 = ((System.Windows.Controls.TextBlock)(target)); return; case 34: this.barCol2 = ((System.Windows.Controls.StackPanel)(target)); return; case 35: this.s1 = ((System.Windows.Controls.TextBlock)(target)); return; case 36: this.s2 = ((System.Windows.Controls.TextBlock)(target)); return; case 37: this.s3 = ((System.Windows.Controls.TextBlock)(target)); return; case 38: this.s4 = ((System.Windows.Controls.TextBlock)(target)); return; case 39: this.s5 = ((System.Windows.Controls.TextBlock)(target)); return; case 40: this.s6 = ((System.Windows.Controls.TextBlock)(target)); return; case 41: this.s7 = ((System.Windows.Controls.TextBlock)(target)); return; case 42: this.s8 = ((System.Windows.Controls.TextBlock)(target)); return; case 43: this.s9 = ((System.Windows.Controls.TextBlock)(target)); return; case 44: this.s10 = ((System.Windows.Controls.TextBlock)(target)); return; } this._contentLoaded = true; }
private void RenderFinishSingleChart(List<List<StringDataValue>> stratifiedValues) { waitPanel.Visibility = System.Windows.Visibility.Collapsed; pnlMain.Children.Clear(); Chart chart = new Chart(); chart.Loaded += new RoutedEventHandler(chart_Loaded); chart.BorderThickness = new Thickness(0); LinearAxis dependentAxis = new LinearAxis(); dependentAxis.Minimum = 0; dependentAxis.ShowGridLines = (bool)checkboxShowHorizontalGridLines.IsChecked; CategoryAxis independentAxis = new CategoryAxis(); independentAxis.Orientation = AxisOrientation.X; foreach (List<StringDataValue> dataValues in stratifiedValues) { DataPointSeries series; LineSeries avgSeries = null; switch (((ComboBoxItem)cbxChartType.SelectedItem).Content.ToString()) { case "Bar": series = new BarSeries(); dependentAxis.Orientation = AxisOrientation.X; ((BarSeries)series).DependentRangeAxis = dependentAxis; chart.PlotAreaStyle = new Style(); chart.PlotAreaStyle.Setters.Add(new Setter(Chart.BackgroundProperty, Brushes.White)); dependentAxis.GridLineStyle = new Style(); dependentAxis.GridLineStyle.Setters.Add(new Setter(Line.StrokeProperty, Brushes.LightGray)); chart.Palette = (System.Collections.ObjectModel.Collection<ResourceDictionary>)this.Resources["defaultBarPalette"]; break; case "Column": series = new ColumnSeries(); if (DashboardHelper.IsColumnText(cbxSingleField.SelectedItem.ToString()) && axisLabelMaxLength > 5) independentAxis.AxisLabelStyle = Resources["RotateAxisStyle90"] as Style; ((ColumnSeries)series).IndependentAxis = independentAxis; dependentAxis.Orientation = AxisOrientation.Y; ((ColumnSeries)series).DependentRangeAxis = dependentAxis; chart.PlotAreaStyle = new Style(); chart.PlotAreaStyle.Setters.Add(new Setter(Chart.BackgroundProperty, Brushes.White)); dependentAxis.GridLineStyle = new Style(); dependentAxis.GridLineStyle.Setters.Add(new Setter(Line.StrokeProperty, Brushes.LightGray)); chart.Palette = (System.Collections.ObjectModel.Collection<ResourceDictionary>)this.Resources["defaultColumnPalette"]; //series.Effect = this.Resources["shadowEffect"] as System.Windows.Media.Effects.DropShadowEffect; dependentAxis.GridLineStyle.Setters.Add(new Setter(Line.StrokeProperty, Brushes.LightGray)); //<Setter Property="Effect" Value="{StaticResource shadowEffect}"/>--> break; case "Pareto": series = new ColumnSeries(); if (DashboardHelper.IsColumnText(cbxSingleField.SelectedItem.ToString()) && axisLabelMaxLength > 5) independentAxis.AxisLabelStyle = Resources["RotateAxisStyle90"] as Style; ((ColumnSeries)series).IndependentAxis = independentAxis; dependentAxis.Orientation = AxisOrientation.Y; ((ColumnSeries)series).DependentRangeAxis = dependentAxis; LinearAxis percentAxis = new LinearAxis(); percentAxis.Minimum = 0; percentAxis.Maximum = 100; percentAxis.ShowGridLines = (bool)checkboxShowHorizontalGridLines.IsChecked; percentAxis.Orientation = AxisOrientation.Y; percentAxis.Location = AxisLocation.Right; avgSeries = new LineSeries(); avgSeries.IndependentValuePath = "IndependentValue"; avgSeries.DependentValuePath = "CurrentMeanValue"; avgSeries.Title = "Accumulated %"; avgSeries.DependentRangeAxis = percentAxis; avgSeries.IndependentAxis = independentAxis; avgSeries.PolylineStyle = Resources["GooglePolylineStyle"] as Style; avgSeries.DataPointStyle = Resources["GoogleDataPointStyle"] as Style; chart.PlotAreaStyle = new Style(); chart.PlotAreaStyle.Setters.Add(new Setter(Chart.BackgroundProperty, Brushes.White)); dependentAxis.GridLineStyle = new Style(); dependentAxis.GridLineStyle.Setters.Add(new Setter(Line.StrokeProperty, Brushes.LightGray)); //series.Effect = this.Resources["shadowEffect"] as System.Windows.Media.Effects.DropShadowEffect; chart.Palette = (System.Collections.ObjectModel.Collection<ResourceDictionary>)this.Resources["defaultColumnPalette"]; break; case "Line": series = new LineSeries(); if (DashboardHelper.IsColumnText(cbxSingleField.SelectedItem.ToString()) && axisLabelMaxLength > 5) independentAxis.AxisLabelStyle = Resources["RotateAxisStyle90"] as Style; ((LineSeries)series).IndependentAxis = independentAxis; dependentAxis.Orientation = AxisOrientation.Y; ((LineSeries)series).DependentRangeAxis = dependentAxis; break; case "Pie": if (stratifiedValues.Count > 1) { if (dataValues.Count > 0) { Label lblStrata = new Label(); lblStrata.Margin = new Thickness(0, 10, 0, 0); lblStrata.FontWeight = FontWeights.Bold; lblStrata.Content = dataValues[0].StratificationValue; pnlMain.Children.Add(lblStrata); } } chart = new LabeledPieChart(); chart.Loaded += new RoutedEventHandler(chart_Loaded); chart.BorderThickness = new Thickness(0); series = new LabeledPieSeries(); series.LegendItemStyle = Resources["PieLegendStyle"] as Style; ((LabeledPieSeries)series).PieChartLabelStyle=Resources["pieChartLabelStyle"] as Style; ((LabeledPieSeries)series).PieChartLabelItemTemplate=Resources["pieChartLabelDataTemplate"] as DataTemplate; ((LabeledPieSeries)series).LabelDisplayMode = DisplayMode.Auto; chart.LegendTitle = cbxSingleField.SelectedItem.ToString(); chart.Series.Add(series); chart.Height = 600; chart.Width = 920; chart.Margin = new Thickness(50, 0, 0, 0); chart.PlotAreaStyle = new Style(); chart.PlotAreaStyle.Setters.Add(new Setter(Chart.BackgroundProperty, Brushes.White)); dependentAxis.GridLineStyle = new Style(); dependentAxis.GridLineStyle.Setters.Add(new Setter(Line.StrokeProperty, Brushes.LightGray)); chart.Palette = (System.Collections.ObjectModel.Collection<ResourceDictionary>)this.Resources["defaultPiePalette"]; pnlMain.Children.Add(chart); break; case "Scatter": series = new ScatterSeries(); dependentAxis.Orientation = AxisOrientation.Y; ((ScatterSeries)series).DependentRangeAxis = dependentAxis; break; default: series = new LineSeries(); dependentAxis.Orientation = AxisOrientation.Y; ((LineSeries)series).DependentRangeAxis = dependentAxis; break; } series.IndependentValuePath = "IndependentValue"; series.DependentValuePath = "DependentValue"; series.ItemsSource = dataValues; if (avgSeries != null) { List<StringDataValue> paretoDataValues = new List<StringDataValue>(dataValues); double max = 0; foreach (StringDataValue sdv in paretoDataValues) { max = max + sdv.DependentValue; } double runningPercent = 0; foreach (StringDataValue sdv in paretoDataValues) { sdv.CurrentMeanValue = ((sdv.DependentValue / max) * 100) + runningPercent; runningPercent = sdv.CurrentMeanValue; } avgSeries.ItemsSource = paretoDataValues; } if (stratifiedValues.Count > 1) { if (!(series is LabeledPieSeries) && cbxStrataField.SelectedIndex > -1) { chart.LegendTitle = cbxStrataField.SelectedItem.ToString(); } if (dataValues.Count > 0 && !IsBooleanWithNoStratas) { series.Title = dataValues[0].StratificationValue.Split('=')[1].Trim(); } else if (dataValues.Count > 0 && IsBooleanWithNoStratas) { series.Title = dataValues[0].StratificationValue.Trim(); chart.LegendTitle = dataValues[0].IndependentValue; } } else { series.Title = "Count"; } if (series is LabeledPieSeries) { //chart.Height = 600; //chart.Width = 800; } else if (series is BarSeries) { if (dataValues.Count > 30) chart.Height = dataValues.Count * 30; else chart.Height = 600; chart.Width = 800; } else { chart.Height = 600; if (dataValues.Count > 20) chart.Width = dataValues.Count * 40; else chart.Width = 800; } if (!(series is LabeledPieSeries)) { chart.Series.Add(series); if (avgSeries != null) { chart.Series.Add(avgSeries); } } /////////////////////////////////////////////////////// string chartSize = "Medium"; if (GadgetOptions == null) { return; } if (GadgetOptions.InputVariableList != null && GadgetOptions.InputVariableList.ContainsKey("chartsize")) { chartSize = GadgetOptions.InputVariableList["chartsize"]; } switch (chartSize) { case "Small": chart.Height = chart.Height / 2; chart.Width = chart.Width / 2; break; case "Medium": chart.Height = chart.Height / 1.5; chart.Width = chart.Width / 1.5; break; case "Custom": if (GadgetOptions.InputVariableList.ContainsKey("chartheight")) { int height; bool success = int.TryParse(GadgetOptions.InputVariableList["chartheight"], out height); if (success) { chart.Height = height; } } if (GadgetOptions.InputVariableList.ContainsKey("chartwidth")) { int width; bool success = int.TryParse(GadgetOptions.InputVariableList["chartwidth"], out width); if (success) { chart.Width = width; } } break; } /////////////////////////////////////////////////////// } if (!((ComboBoxItem)cbxChartType.SelectedItem).Content.ToString().Equals("Pie")) { pnlMain.Children.Add(chart); } }
void System.Windows.Markup.IComponentConnector.Connect(int connectionId, object target) { switch (connectionId) { case 1: this.mainWD = ((SHIV_PhongCachAm.MainWindow)(target)); #line 10 "..\..\..\MainWindow.xaml" this.mainWD.Closing += new System.ComponentModel.CancelEventHandler(this.mainWD_Closing); #line default #line hidden return; case 2: #line 175 "..\..\..\MainWindow.xaml" ((System.Windows.Input.CommandBinding)(target)).Executed += new System.Windows.Input.ExecutedRoutedEventHandler(this.EventF1Push_Process); #line default #line hidden return; case 3: #line 176 "..\..\..\MainWindow.xaml" ((System.Windows.Input.CommandBinding)(target)).Executed += new System.Windows.Input.ExecutedRoutedEventHandler(this.EventF8Push_Process); #line default #line hidden return; case 4: #line 177 "..\..\..\MainWindow.xaml" ((System.Windows.Input.CommandBinding)(target)).Executed += new System.Windows.Input.ExecutedRoutedEventHandler(this.EventF10Push_Process); #line default #line hidden return; case 5: #line 178 "..\..\..\MainWindow.xaml" ((System.Windows.Input.CommandBinding)(target)).Executed += new System.Windows.Input.ExecutedRoutedEventHandler(this.EventSPush_Process); #line default #line hidden return; case 6: #line 179 "..\..\..\MainWindow.xaml" ((System.Windows.Input.CommandBinding)(target)).Executed += new System.Windows.Input.ExecutedRoutedEventHandler(this.EventOPush_Process); #line default #line hidden return; case 7: this.lblTimerCycle = ((System.Windows.Controls.Label)(target)); return; case 8: this.lblStatus = ((System.Windows.Controls.Label)(target)); return; case 9: this.lblDatetime = ((System.Windows.Controls.Label)(target)); #line 213 "..\..\..\MainWindow.xaml" this.lblDatetime.PreviewMouseDown += new System.Windows.Input.MouseButtonEventHandler(this.lblDatetime_PreviewMouseDown); #line default #line hidden return; case 10: this.lblLanguage = ((System.Windows.Controls.Label)(target)); #line 215 "..\..\..\MainWindow.xaml" this.lblLanguage.PreviewMouseDown += new System.Windows.Input.MouseButtonEventHandler(this.lblLanguage_PreviewMouseDown); #line default #line hidden return; case 11: this.lblNguoiVanhanh = ((System.Windows.Controls.Label)(target)); #line 250 "..\..\..\MainWindow.xaml" this.lblNguoiVanhanh.PreviewMouseDown += new System.Windows.Input.MouseButtonEventHandler(this.lblNguoiVanhanh_PreviewMouseDown); #line default #line hidden return; case 12: this.lblPID = ((System.Windows.Controls.Label)(target)); return; case 13: this.lblMaOrder = ((System.Windows.Controls.Label)(target)); #line 272 "..\..\..\MainWindow.xaml" this.lblMaOrder.PreviewMouseDown += new System.Windows.Input.MouseButtonEventHandler(this.lblMaOrder_PreviewMouseDown); #line default #line hidden return; case 14: this.chk1PhaOrder = ((System.Windows.Controls.CheckBox)(target)); return; case 15: this.lblMotaSanpham = ((System.Windows.Controls.Label)(target)); return; case 16: this.lblSTTSanpham = ((System.Windows.Controls.Label)(target)); #line 295 "..\..\..\MainWindow.xaml" this.lblSTTSanpham.DataContextChanged += new System.Windows.DependencyPropertyChangedEventHandler(this.lblSTTSanpham_DataContextChanged); #line default #line hidden #line 296 "..\..\..\MainWindow.xaml" this.lblSTTSanpham.MouseDown += new System.Windows.Input.MouseButtonEventHandler(this.lblSTTSanpham_MouseDown); #line default #line hidden return; case 17: this.lblGiamtoc = ((System.Windows.Controls.Label)(target)); return; case 18: this.lblDienapChuan = ((System.Windows.Controls.Label)(target)); return; case 19: this.lblDienapThucte = ((System.Windows.Controls.Label)(target)); return; case 20: this.lblTansoChuan = ((System.Windows.Controls.Label)(target)); return; case 21: this.lblTansoThucte = ((System.Windows.Controls.Label)(target)); return; case 22: this.lblTcVongquay = ((System.Windows.Controls.Label)(target)); return; case 23: this.lblVongquayFwdMax = ((System.Windows.Controls.Label)(target)); return; case 24: this.lblVongquayBwdMax = ((System.Windows.Controls.Label)(target)); return; case 25: this.lblVongquayLech = ((System.Windows.Controls.Label)(target)); return; case 26: this.lblOKVongquay = ((System.Windows.Controls.Label)(target)); return; case 27: this.lblNGVongquay = ((System.Windows.Controls.Label)(target)); return; case 28: this.lblHuongquayMax = ((System.Windows.Controls.Label)(target)); return; case 29: this.lblOKXuatluc = ((System.Windows.Controls.Label)(target)); return; case 30: this.lblNGXuatluc = ((System.Windows.Controls.Label)(target)); return; case 31: this.lblTcDongdien = ((System.Windows.Controls.Label)(target)); return; case 32: this.lblDongdienFwdMax = ((System.Windows.Controls.Label)(target)); return; case 33: this.lblDongdienBwdMax = ((System.Windows.Controls.Label)(target)); return; case 34: this.lblDongdienLech = ((System.Windows.Controls.Label)(target)); return; case 35: this.lblOKDongdien = ((System.Windows.Controls.Label)(target)); return; case 36: this.lblNGDongdien = ((System.Windows.Controls.Label)(target)); return; case 37: this.lblTCNhapluc = ((System.Windows.Controls.Label)(target)); return; case 38: this.lblNhaplucFwdMax = ((System.Windows.Controls.Label)(target)); return; case 39: this.lblNhaplucBwdMax = ((System.Windows.Controls.Label)(target)); return; case 40: this.lblNhaplucLech = ((System.Windows.Controls.Label)(target)); return; case 41: this.lblOKNhapluc = ((System.Windows.Controls.Label)(target)); return; case 42: this.lblNGNhapluc = ((System.Windows.Controls.Label)(target)); return; case 43: this.lblTcDorung = ((System.Windows.Controls.Label)(target)); return; case 44: this.lblDorungFwdMax = ((System.Windows.Controls.Label)(target)); return; case 45: this.lblDorungBwdMax = ((System.Windows.Controls.Label)(target)); return; case 46: this.lblDorungLech = ((System.Windows.Controls.Label)(target)); return; case 47: this.lblOKDorung = ((System.Windows.Controls.Label)(target)); return; case 48: this.lblNGDorung = ((System.Windows.Controls.Label)(target)); return; case 49: this.lblTcTiengon = ((System.Windows.Controls.Label)(target)); return; case 50: this.lblTiengonFwdMax = ((System.Windows.Controls.Label)(target)); return; case 51: this.lblTiengonBwdMax = ((System.Windows.Controls.Label)(target)); return; case 52: this.lblTiengonLech = ((System.Windows.Controls.Label)(target)); return; case 53: this.lblOKTiengon = ((System.Windows.Controls.Label)(target)); return; case 54: this.lblNGTiengon = ((System.Windows.Controls.Label)(target)); return; case 55: this.lblAmsacThuan = ((System.Windows.Controls.Label)(target)); return; case 56: this.lblAmsacNghich = ((System.Windows.Controls.Label)(target)); return; case 57: this.lblOKAmsac = ((System.Windows.Controls.Label)(target)); return; case 58: this.lblNGAmsac = ((System.Windows.Controls.Label)(target)); return; case 59: this.LineChart1 = ((System.Windows.Controls.DataVisualization.Charting.Chart)(target)); return; case 60: this.LineChartChild = ((System.Windows.Controls.DataVisualization.Charting.LineSeries)(target)); return; case 61: this.valueSettingYRange = ((System.Windows.Controls.DataVisualization.Charting.LinearAxis)(target)); return; case 62: this.LineChartChild_TempTiengon = ((System.Windows.Controls.DataVisualization.Charting.LineSeries)(target)); return; case 63: this.LineChartMax = ((System.Windows.Controls.DataVisualization.Charting.LineSeries)(target)); return; case 64: this.btnF1 = ((System.Windows.Controls.Label)(target)); #line 660 "..\..\..\MainWindow.xaml" this.btnF1.PreviewMouseDown += new System.Windows.Input.MouseButtonEventHandler(this.btnF1_PreviewMouseDown); #line default #line hidden return; case 65: this.btnF3 = ((System.Windows.Controls.Label)(target)); #line 663 "..\..\..\MainWindow.xaml" this.btnF3.MouseDown += new System.Windows.Input.MouseButtonEventHandler(this.btnF3_MouseDown); #line default #line hidden return; case 66: #line 666 "..\..\..\MainWindow.xaml" ((System.Windows.Controls.Label)(target)).PreviewMouseDown += new System.Windows.Input.MouseButtonEventHandler(this.EventF10Push_Process_Mouse); #line default #line hidden return; case 67: #line 669 "..\..\..\MainWindow.xaml" ((System.Windows.Controls.Label)(target)).PreviewMouseDown += new System.Windows.Input.MouseButtonEventHandler(this.LabelF9_PreviewMouseDown); #line default #line hidden return; case 68: #line 672 "..\..\..\MainWindow.xaml" ((System.Windows.Controls.Label)(target)).PreviewMouseDown += new System.Windows.Input.MouseButtonEventHandler(this.EventF8Push_Process); #line default #line hidden return; } this._contentLoaded = true; }
public void AbleToSetMinimumMaximumOnDependentAxis() { Chart chart = new Chart(); ColumnSeries series = new ColumnSeries(); series.ItemsSource = new int[] { 1, 2, 3 }; LinearAxis dependentAxis = new LinearAxis { Orientation = AxisOrientation.Y }; series.DependentRangeAxis = dependentAxis; chart.Series.Add(series); TestAsync( chart, () => Assert.AreEqual(3, ChartTestUtilities.GetDataPointsForSeries(series).Count()), () => dependentAxis.Maximum = 5, () => Assert.AreEqual(3, ChartTestUtilities.GetDataPointsForSeries(series).Count()), () => dependentAxis.Minimum = 0.5, () => Assert.AreEqual(3, ChartTestUtilities.GetDataPointsForSeries(series).Count())); }
void dbCol1_GetRecordsCompleted(object sender, GetRecordsCompletedEventArgs e) { if (e.Error == null) { List<EstCol> estCols = GenerateColData1(e.Result); Dictionary<string, ColChart> ColValue = new Dictionary<string, ColChart>(); ColChart chart; foreach (EstCol estcol in estCols) { if (!ColValue.ContainsKey(estcol.Nm)) ColValue.Add(estcol.Nm, new ColChart() { Title = estcol.Nm, ItemSource = new List<EstCol> { new EstCol() { Amount = estcol.Amount, Month = estcol.Month } }, }); else { chart = ColValue[estcol.Nm]; List<EstCol> amt = chart.ItemSource; amt.Add(new EstCol() { Amount = estcol.Amount, Month = estcol.Month }); } } pieChart.Series.Clear(); int i = 0; foreach (KeyValuePair<string, ColChart> kvp in ColValue) { DataPointSeries series = new ColumnSeries(); series.Title = (kvp.Value).Title; series.ItemsSource = (kvp.Value).ItemSource; series.DependentValuePath = "Amount"; series.IndependentValuePath = "Month"; if (i == 0) { Style style = new Style(typeof(Control)); Setter str1 = new Setter(Control.BackgroundProperty, new SolidColorBrush(GetColorFromHexa("#FF938C39"))); style.Setters.Add(str1); series.DataPointStyle = style; } else { Style style = new Style(typeof(Control)); Setter str1 = new Setter(Control.BackgroundProperty, new SolidColorBrush(GetColorFromHexa("#FF70282B"))); style.Setters.Add(str1); series.DataPointStyle = style; } pieChart.Series.Add(series); i++; } CategoryAxis xAxis = new CategoryAxis(); xAxis.Title = "月(" + dateFrom.ToString("yyyy/MM/dd") + " ~ " + dateTo.ToString("yyyy/MM/dd") + ")"; xAxis.SortOrder = CategorySortOrder.Ascending; //xAxis.Orientation = AxisOrientation.X; pieChart.Axes.Add(xAxis); LinearAxis yAxis = new LinearAxis(); yAxis.Title = "金額(万)"; yAxis.Orientation = AxisOrientation.Y; pieChart.Axes.Add(yAxis); yAxis.Minimum = 0; } }
private void RenderFinishEpiCurve(DataTable data, List<List<StringDataValue>> dataValues) { waitPanel.Visibility = System.Windows.Visibility.Collapsed; StackedHistogramSeries stackedSeries = new StackedHistogramSeries(); LinearAxis axis = new LinearAxis(); axis.Orientation = AxisOrientation.Y; axis.Minimum = 0; axis.ShowGridLines = (bool)checkboxShowHorizontalGridLines.IsChecked; //true; stackedSeries.DependentAxis = axis; CategoryAxis independentAxis = new CategoryAxis(); independentAxis.Orientation = AxisOrientation.X; double extraRightPadding = 0; if (!DashboardHelper.IsColumnNumeric(cbxDateField.SelectedItem.ToString())) { if (cbxXAxisLabelRotation.SelectedIndex == -1 || ((ComboBoxItem)cbxXAxisLabelRotation.SelectedItem).Content.ToString().Equals("90")) { independentAxis.AxisLabelStyle = Resources["RotateAxisStyle90"] as Style; } else if (cbxXAxisLabelRotation.SelectedIndex >= 0 && ((ComboBoxItem)cbxXAxisLabelRotation.SelectedItem).Content.ToString().Equals("45")) { independentAxis.AxisLabelStyle = Resources["RotateAxisStyle45"] as Style; extraRightPadding = 50; } } stackedSeries.IndependentAxis = independentAxis; int counter = 1; foreach (var values in dataValues) { SeriesDefinition definition = new SeriesDefinition(); definition.DependentValuePath = "DependentValue"; definition.IndependentValuePath = "IndependentValue"; if (cbxCaseStatusField.SelectedIndex >= 0 && !string.IsNullOrEmpty(cbxCaseStatusField.SelectedItem.ToString())) { Field field = null; foreach (DataRow fieldRow in DashboardHelper.FieldTable.Rows) { if (fieldRow["columnname"].Equals(cbxCaseStatusField.SelectedItem.ToString())) { if (fieldRow["epifieldtype"] is Field) { field = fieldRow["epifieldtype"] as Field; } break; } } if (field != null && (field is YesNoField || field is CheckBoxField)) { string value = data.Columns[counter].ColumnName; if (value.ToLower().Equals("true") || value.Equals("1")) { definition.Title = DashboardHelper.Config.Settings.RepresentationOfYes; } else if (value.ToLower().Equals("false") || value.Equals("0")) { definition.Title = DashboardHelper.Config.Settings.RepresentationOfNo; } else { definition.Title = cbxCaseStatusField.SelectedItem.ToString(); } } else { definition.Title = data.Columns[counter].ColumnName; } } else { definition.Title = SharedStrings.DEFAULT_CHART_LEGEND_ITEM; } definition.ItemsSource = values; //definition.DataPointStyle = this.Resources["epiCurveDataPointStyle"] as Style; stackedSeries.SeriesDefinitions.Add(definition); counter++; } Chart chart = new Chart(); if (dataValues.Count == 1) { chart.LegendStyle = this.Resources["noLegendStyle"] as Style; } chart.PlotAreaStyle = new Style(); chart.PlotAreaStyle.Setters.Add(new Setter(Chart.BackgroundProperty, Brushes.White)); axis.GridLineStyle = new Style(); axis.GridLineStyle.Setters.Add(new Setter(Line.StrokeProperty, Brushes.LightGray)); chart.Palette = (System.Collections.ObjectModel.Collection<ResourceDictionary>)this.Resources["defaultColumnPalette"]; //stackedSeries chart.BorderThickness = new Thickness(0); chart.Loaded += new RoutedEventHandler(chart_Loaded); chart.Series.Add(stackedSeries); chart.Height = 500; chart.Width = (stackedSeries.IndependentValueCount * 25) + 150; chart.Margin = new Thickness(chart.Margin.Left, chart.Margin.Top, chart.Margin.Right + extraRightPadding, chart.Margin.Bottom); pnlMain.Children.Clear(); pnlMain.Children.Add(chart); SetChartLabels(ChartTitle, LegendTitle, XAxisLabel, YAxisLabel); }
public void CustomMinimumAndMaximumAreRespectedViaStyle() { Chart chart = new Chart(); LinearAxis horizontalAxis = new LinearAxis { Orientation = AxisOrientation.X }; Style horizontalStyle = new Style(typeof(LinearAxis)); horizontalStyle.Setters.Add(new Setter(LinearAxis.MinimumProperty, 50.0)); horizontalStyle.Setters.Add(new Setter(LinearAxis.MaximumProperty, 120.0)); horizontalAxis.Style = horizontalStyle; chart.Axes.Add(horizontalAxis); LinearAxis verticalAxis = new LinearAxis { Orientation = AxisOrientation.Y }; Style verticalStyle = new Style(typeof(LinearAxis)); verticalStyle.Setters.Add(new Setter(LinearAxis.MinimumProperty, 40.0)); verticalStyle.Setters.Add(new Setter(LinearAxis.MaximumProperty, 130.0)); verticalAxis.Style = verticalStyle; chart.Axes.Add(verticalAxis); ScatterSeries series = new ScatterSeries(); series.IndependentValueBinding = new Binding(); series.ItemsSource = new int[] { 100 }; chart.Series.Add(series); TestAsync( chart, () => Assert.AreEqual(50, horizontalAxis.ActualMinimum), () => Assert.AreEqual(120, horizontalAxis.ActualMaximum), () => Assert.AreEqual(40, verticalAxis.ActualMinimum), () => Assert.AreEqual(130, verticalAxis.ActualMaximum)); }
/// <summary> /// Generates value/value Series samples. /// </summary> /// <param name="panel">Panel to add the generated Charts to.</param> /// <param name="seriesConstructor">Function that returns a Series instance for each sample.</param> public static void GenerateDateTimeValueSeriesSamples(Panel panel, Func<Series> seriesConstructor) { Scenario[] scenarios = new Scenario[] { new Scenario { Title = "Value by Date", ItemsSource = _dynamicDateItemsSource, DependentValueBinding = new Binding("Second"), IndependentValueBinding = new Binding("First") }, }; Action<Chart> chartModifier = (chart) => { IAxis dateAxis = new DateTimeAxis { Orientation = AxisOrientation.X }; chart.Axes.Add(dateAxis); IAxis valueAxis = new LinearAxis { Orientation = AxisOrientation.Y, Minimum = 0, Maximum = 20, ShowGridLines = true }; chart.Axes.Add(valueAxis); }; GenerateSeriesSamples(panel, seriesConstructor, scenarios, chartModifier); }
public void TitleCentersProperlyAfterUpdate() { Chart chart = new Chart(); LinearAxis horizontalAxis = new LinearAxis { Orientation = AxisOrientation.X, Title = "Filler Text" }; chart.Axes.Add(horizontalAxis); LinearAxis verticalAxis = new LinearAxis { Orientation = AxisOrientation.Y, Title = "Sample Title" }; chart.Axes.Add(verticalAxis); Title horizontalTitle = null; Title verticalTitle = null; TestAsync( chart, () => { horizontalTitle = horizontalAxis.GetVisualDescendents().OfType<Title>().First(); verticalTitle = verticalAxis.GetVisualDescendents().OfType<Title>().First(); }, () => { Point xLeftTop = horizontalTitle.TransformToVisual(horizontalAxis).Transform(new Point()); Assert.AreEqual(Math.Round(xLeftTop.X), Math.Round((horizontalAxis.ActualWidth - horizontalTitle.ActualWidth) / 2)); Point yLeftTop = verticalTitle.TransformToVisual(verticalAxis).Transform(new Point()); Assert.AreEqual(Math.Round(yLeftTop.Y), Math.Round((verticalAxis.ActualHeight + verticalTitle.ActualWidth) / 2)); }, () => { horizontalAxis.Title = "Much longer filler text"; verticalAxis.Title = new Rectangle { Width = 100, Height = 10 }; }, () => { Point xLeftTop = horizontalTitle.TransformToVisual(horizontalAxis).Transform(new Point()); Assert.AreEqual(Math.Round(xLeftTop.X), Math.Round((horizontalAxis.ActualWidth - horizontalTitle.ActualWidth) / 2)); Point yLeftTop = verticalTitle.TransformToVisual(verticalAxis).Transform(new Point()); Assert.AreEqual(Math.Round(yLeftTop.Y), Math.Round((verticalAxis.ActualHeight + verticalTitle.ActualWidth) / 2)); }); }
/// <summary> /// Acquires an independent axis suitable for use with the data values of the series. /// </summary> /// <returns>Axis instance.</returns> protected override IAxis AcquireIndependentAxis() { IAxis independentAxis = SeriesHost.Axes .Where(a => (a.Orientation == AxisOrientation.X) && ((a is IRangeAxis) || (a is ICategoryAxis)) && DataItems.Any() && (a.CanPlot(DataItems.First().ActualIndependentValue))) .FirstOrDefault(); if (null == independentAxis) { object probeValue = DataItems.Any() ? DataItems.First().ActualIndependentValue : null; double convertedDouble; DateTime convertedDateTime; if ((null != probeValue) && ValueHelper.TryConvert(probeValue, out convertedDouble)) { independentAxis = new LinearAxis(); } else if ((null != probeValue) && ValueHelper.TryConvert(probeValue, out convertedDateTime)) { independentAxis = new DateTimeAxis(); } else { independentAxis = new CategoryAxis(); } independentAxis.Orientation = AxisOrientation.X; } return independentAxis; }
public void AddingAxisWithGridlinesDoesNotCauseException() { Chart chart = new Chart(); LinearAxis axis = new LinearAxis { Orientation = AxisOrientation.X, ShowGridLines = true }; chart.Axes.Add(axis); }
void System.Windows.Markup.IComponentConnector.Connect(int connectionId, object target) { switch (connectionId) { case 1: this.Mainwindow = ((UV_convertor.MainWindow)(target)); return; case 2: this.Gservice = ((System.Windows.Controls.Grid)(target)); #line 107 "..\..\MainWindow.xaml" this.Gservice.MouseEnter += new System.Windows.Input.MouseEventHandler(this.Gservice_MouseEnter); #line default #line hidden #line 107 "..\..\MainWindow.xaml" this.Gservice.MouseLeave += new System.Windows.Input.MouseEventHandler(this.Gservice_MouseLeave); #line default #line hidden #line 107 "..\..\MainWindow.xaml" this.Gservice.MouseLeftButtonDown += new System.Windows.Input.MouseButtonEventHandler(this.Label_MouseLeftButtonDown); #line default #line hidden return; case 3: this.Gservice_measurement = ((System.Windows.Controls.Grid)(target)); return; case 4: this.gmeasurement = ((System.Windows.Controls.Grid)(target)); #line 110 "..\..\MainWindow.xaml" this.gmeasurement.MouseEnter += new System.Windows.Input.MouseEventHandler(this.gmeasurement_MouseEnter); #line default #line hidden #line 110 "..\..\MainWindow.xaml" this.gmeasurement.MouseLeave += new System.Windows.Input.MouseEventHandler(this.gmeasurement_MouseLeave); #line default #line hidden #line 110 "..\..\MainWindow.xaml" this.gmeasurement.MouseLeftButtonDown += new System.Windows.Input.MouseButtonEventHandler(this.GBSetting_MouseLeftButtonDown_1); #line default #line hidden return; case 5: this.GClose = ((System.Windows.Controls.Grid)(target)); #line 115 "..\..\MainWindow.xaml" this.GClose.MouseLeftButtonDown += new System.Windows.Input.MouseButtonEventHandler(this.Gmin_MouseLeftButtonDown); #line default #line hidden #line 115 "..\..\MainWindow.xaml" this.GClose.MouseLeave += new System.Windows.Input.MouseEventHandler(this.GClose_MouseLeave); #line default #line hidden #line 115 "..\..\MainWindow.xaml" this.GClose.MouseEnter += new System.Windows.Input.MouseEventHandler(this.GClose_MouseEnter); #line default #line hidden return; case 6: this.RCLose = ((System.Windows.Shapes.Rectangle)(target)); return; case 7: this.GMin = ((System.Windows.Controls.Grid)(target)); #line 138 "..\..\MainWindow.xaml" this.GMin.MouseLeftButtonDown += new System.Windows.Input.MouseButtonEventHandler(this.GMin_MouseLeftButtonDown_1); #line default #line hidden return; case 8: this.RMIN = ((System.Windows.Shapes.Rectangle)(target)); return; case 9: this.grdMain = ((System.Windows.Controls.Grid)(target)); return; case 10: this.simChart = ((System.Windows.Controls.DataVisualization.Charting.Chart)(target)); return; case 11: this.linex = ((System.Windows.Controls.DataVisualization.Charting.LinearAxis)(target)); return; case 12: this.liney = ((System.Windows.Controls.DataVisualization.Charting.LinearAxis)(target)); return; } this._contentLoaded = true; }
/// <summary> /// Get or create a linear numeric axis in the correct dimension. /// </summary> /// <param name="orientation">Dimension of the axis to create.</param> /// <param name="oldAxis"> /// Old value of the axis in this dimension. /// </param> /// <returns>New value of the axis in this dimension.</returns> private IRangeAxis GetAxis(AxisOrientation orientation, IRangeAxis oldAxis) { // Check the existing axes for a potential axis IRangeAxis axis = (from IRangeAxis a in SeriesHost.Axes.OfType<IRangeAxis>() where a.Orientation == orientation select a) .FirstOrDefault(); if (axis == null) { // Create a new axis if not found axis = new LinearAxis { Orientation = orientation, }; } if (oldAxis != axis) { // Unregister any existing axis if (oldAxis != null) { oldAxis.RegisteredListeners.Remove(this); } // Register the new axis if (!axis.RegisteredListeners.Contains(this)) { axis.RegisteredListeners.Add(this); } } return axis; }
private LinearAxis GetMatOutAxis(bool visible, double maximum, bool isValue, KilooMega km) { LinearAxis la = new LinearAxis(); la.Title = "Sales Out " + Utils.GetUnitLabel_Long(_productBrand, isValue, km); la.Orientation = AxisOrientation.Y; la.Minimum = 0; la.Maximum = maximum; la.AxisLabelStyle = Application.Current.Resources["NumberFormatAxisStyle"] as Style; if (!visible) { la.Width = 0; la.Opacity = 0; } return la; }
private void SetGraph(string strataValue, List<SimpleDataValue> actualValues, List<SimpleDataValue> trendValues, List<SimpleDataValue> aberrationValues, List<DataGridRow> aberrationDetails) { StackPanel chartPanel = new StackPanel(); chartPanel.Margin = (Thickness)this.Resources["genericElementMargin"]; chartPanel.Visibility = System.Windows.Visibility.Collapsed; strataPanelList.Add(chartPanel); if (GadgetOptions.StrataVariableNames.Count == 0) { panelMain.Children.Add(chartPanel); } else { TextBlock txtExpanderHeader = new TextBlock(); txtExpanderHeader.Text = strataValue; txtExpanderHeader.Style = this.Resources["genericOutputExpanderText"] as Style; Expander expander = new Expander(); expander.Margin = (Thickness)this.Resources["expanderMargin"]; //new Thickness(6, 2, 6, 6); expander.IsExpanded = true; expander.Header = txtExpanderHeader; expander.Visibility = System.Windows.Visibility.Collapsed; expander.Content = chartPanel; chartPanel.Tag = txtExpanderHeader.Text; panelMain.Children.Add(expander); strataExpanderList.Add(expander); } Chart chart = new Chart(); LinearAxis dependentAxis = new LinearAxis(); dependentAxis.Orientation = AxisOrientation.Y; dependentAxis.Minimum = 0; dependentAxis.ShowGridLines = true; CategoryAxis independentAxis = new CategoryAxis(); independentAxis.Orientation = AxisOrientation.X; independentAxis.SortOrder = CategorySortOrder.Ascending; independentAxis.AxisLabelStyle = Resources["RotateAxisAberrationStyle"] as Style; chart.PlotAreaStyle = new Style(); chart.PlotAreaStyle.Setters.Add(new Setter(Chart.BackgroundProperty, Brushes.White)); dependentAxis.GridLineStyle = new Style(); dependentAxis.GridLineStyle.Setters.Add(new Setter(Line.StrokeProperty, Brushes.LightGray)); //System.Windows.Controls.DataVisualization.Charting.Chart.BackgroundProperty try { independentAxis.AxisLabelStyle.Setters.Add(new Setter(AxisLabel.StringFormatProperty, "{0:d}")); } catch (Exception) { //already added } LineSeries series1 = new LineSeries(); series1.IndependentValuePath = "IndependentValue"; series1.DependentValuePath = "DependentValue"; series1.ItemsSource = actualValues; series1.Title = DashboardSharedStrings.GADGET_ABERRATION_ACTUAL; series1.DependentRangeAxis = dependentAxis; series1.IndependentAxis = independentAxis; LineSeries series2 = new LineSeries(); series2.IndependentValuePath = "IndependentValue"; series2.DependentValuePath = "DependentValue"; series2.ItemsSource = trendValues; series2.Title = DashboardSharedStrings.GADGET_ABERRATION_EXPECTED; series2.DependentRangeAxis = dependentAxis; series2.IndependentAxis = independentAxis; series2.PolylineStyle = Resources["GooglePolylineAberrationStyle"] as Style; series2.DataPointStyle = Resources["GoogleDataPointAberrationStyle"] as Style; ScatterSeries series3 = new ScatterSeries(); series3.IndependentValuePath = "IndependentValue"; series3.DependentValuePath = "DependentValue"; series3.ItemsSource = aberrationValues; series3.Title = DashboardSharedStrings.GADGET_ABERRATION; series3.DependentRangeAxis = dependentAxis; series3.IndependentAxis = independentAxis; series3.DataPointStyle = Resources["DataPointAberrationStyle"] as Style; chart.Series.Add(series1); chart.Series.Add(series3); chart.Series.Add(series2); chart.Height = 400; //if (actualValues.Count > 37) //{ // chart.Width = (actualValues.Count * (871.0 / 37.0)) + 129; //} //else //{ // chart.Width = 1000; //} chart.BorderThickness = new Thickness(0); chart.Margin = new Thickness(6, -20, 6, 6); //chart.Width = (actualValues.Count * (871.0 / 37.0)) + 539; //Label title = new Label(); //title.Content = strataValue; //title.Margin = new Thickness(10); //title.FontWeight = FontWeights.Bold; //panelMain.Children.Add(title); //panelMain.Children.Add(chart); ScrollViewer sv = new ScrollViewer(); sv.MaxHeight = 400; sv.MaxWidth = System.Windows.SystemParameters.PrimaryScreenWidth - 125; //if (actualValues.Count > 37) //{ chart.Width = (actualValues.Count * (871.0 / 37.0)) + 229; //} //else //{ // sv.Width = 900; //} sv.VerticalScrollBarVisibility = ScrollBarVisibility.Disabled; //sv.HorizontalAlignment = System.Windows.HorizontalAlignment.Left; sv.HorizontalContentAlignment = System.Windows.HorizontalAlignment.Left; sv.HorizontalScrollBarVisibility = ScrollBarVisibility.Auto; sv.Content = chart; chartPanel.Children.Add(sv); if (aberrationDetails.Count == 0) { Label noAbberration = new Label(); noAbberration.Content = DashboardSharedStrings.GADGET_NO_ABERRATIONS_FOUND; noAbberration.HorizontalAlignment = System.Windows.HorizontalAlignment.Center; noAbberration.Margin = new Thickness(0, 0, 0, 0); noAbberration.FontWeight = FontWeights.Bold; noAbberration.Foreground = Brushes.Red; //panelMain.Children.Add(noAbberration); chartPanel.Children.Add(noAbberration); } else { Label abberrationFound = new Label(); abberrationFound.Content = DashboardSharedStrings.GADGET_ABERRATIONS_FOUND; abberrationFound.HorizontalAlignment = System.Windows.HorizontalAlignment.Center; abberrationFound.Margin = new Thickness(0, 0, 0, 5); abberrationFound.FontWeight = FontWeights.Bold; abberrationFound.Foreground = Brushes.Red; //panelMain.Children.Add(abberrationFound); chartPanel.Children.Add(abberrationFound); Grid grid = new Grid(); grid.SnapsToDevicePixels = true; grid.HorizontalAlignment = HorizontalAlignment.Center; grid.Margin = new Thickness(0, 0, 0, 0); ColumnDefinition column1 = new ColumnDefinition(); ColumnDefinition column2 = new ColumnDefinition(); ColumnDefinition column3 = new ColumnDefinition(); ColumnDefinition column4 = new ColumnDefinition(); column1.Width = GridLength.Auto; column2.Width = GridLength.Auto; column3.Width = GridLength.Auto; column4.Width = GridLength.Auto; grid.ColumnDefinitions.Add(column1); grid.ColumnDefinitions.Add(column2); grid.ColumnDefinitions.Add(column3); grid.ColumnDefinitions.Add(column4); RowDefinition rowDefHeader = new RowDefinition(); rowDefHeader.Height = new GridLength(25); grid.RowDefinitions.Add(rowDefHeader); //grdFreq.RowDefinitions.Add(rowDefHeader); for (int y = 0; y < /*grdFreq*/grid.ColumnDefinitions.Count; y++) { Rectangle rctHeader = new Rectangle(); rctHeader.Style = this.Resources["gridHeaderCellRectangle"] as Style; Grid.SetRow(rctHeader, 0); Grid.SetColumn(rctHeader, y); grid.Children.Add(rctHeader); //grdFreq.Children.Add(rctHeader); } TextBlock txtValHeader = new TextBlock(); txtValHeader.Text = DashboardSharedStrings.GADGET_ABERRATION_DATE; txtValHeader.Style = this.Resources["columnHeadingText"] as Style; Grid.SetRow(txtValHeader, 0); Grid.SetColumn(txtValHeader, 0); grid.Children.Add(txtValHeader); //grdFreq.Children.Add(txtValHeader); TextBlock txtFreqHeader = new TextBlock(); txtFreqHeader.Text = DashboardSharedStrings.GADGET_ABERRATION_COUNT; txtFreqHeader.Style = this.Resources["columnHeadingText"] as Style; Grid.SetRow(txtFreqHeader, 0); Grid.SetColumn(txtFreqHeader, 1); grid.Children.Add(txtFreqHeader); //grdFreq.Children.Add(txtFreqHeader); TextBlock txtPctHeader = new TextBlock(); txtPctHeader.Text = DashboardSharedStrings.GADGET_ABERRATION_EXPECTED; txtPctHeader.Style = this.Resources["columnHeadingText"] as Style; Grid.SetRow(txtPctHeader, 0); Grid.SetColumn(txtPctHeader, 2); grid.Children.Add(txtPctHeader); //grdFreq.Children.Add(txtPctHeader); TextBlock txtAccuHeader = new TextBlock(); txtAccuHeader.Text = DashboardSharedStrings.GADGET_ABERRATION_DIFF; txtAccuHeader.Style = this.Resources["columnHeadingText"] as Style; Grid.SetRow(txtAccuHeader, 0); Grid.SetColumn(txtAccuHeader, 3); grid.Children.Add(txtAccuHeader); //panelMain.Children.Add(grid); chartPanel.Children.Add(grid); int rowcount = 1; foreach (DataGridRow aberrationDetail in aberrationDetails) { RowDefinition rowDef = new RowDefinition(); grid.RowDefinitions.Add(rowDef); TextBlock txtDate = new TextBlock(); txtDate.Text = aberrationDetail.Date.ToShortDateString(); txtDate.Margin = new Thickness(2); txtDate.VerticalAlignment = VerticalAlignment.Center; txtDate.HorizontalAlignment = HorizontalAlignment.Center; Grid.SetRow(txtDate, rowcount); Grid.SetColumn(txtDate, 0); grid.Children.Add(txtDate); TextBlock txtFreq = new TextBlock(); txtFreq.Text = aberrationDetail.Frequency.ToString(); txtFreq.Margin = new Thickness(2); txtFreq.VerticalAlignment = VerticalAlignment.Center; txtFreq.HorizontalAlignment = HorizontalAlignment.Center; Grid.SetRow(txtFreq, rowcount); Grid.SetColumn(txtFreq, 1); grid.Children.Add(txtFreq); TextBlock txtAvg = new TextBlock(); txtAvg.Text = aberrationDetail.RunningAverage.ToString("N2"); txtAvg.Margin = new Thickness(2); txtAvg.VerticalAlignment = VerticalAlignment.Center; txtAvg.HorizontalAlignment = HorizontalAlignment.Center; Grid.SetRow(txtAvg, rowcount); Grid.SetColumn(txtAvg, 2); grid.Children.Add(txtAvg); TextBlock txtDelta = new TextBlock(); txtDelta.Text = " " + aberrationDetail.Delta.ToString("N2") + " standard deviations "; StackPanel pnl = new StackPanel(); pnl.Orientation = Orientation.Horizontal; pnl.VerticalAlignment = VerticalAlignment.Center; pnl.HorizontalAlignment = HorizontalAlignment.Center; pnl.Children.Add(txtDelta); Grid.SetRow(pnl, rowcount); Grid.SetColumn(pnl, 3); grid.Children.Add(pnl); rowcount++; } int rdcount = 0; foreach (RowDefinition rd in grid.RowDefinitions) { int cdcount = 0; foreach (ColumnDefinition cd in grid.ColumnDefinitions) { //Rectangle rctBorder = new Rectangle(); //rctBorder.Stroke = Brushes.Black; //Grid.SetRow(rctBorder, rdcount); //Grid.SetColumn(rctBorder, cdcount); //grid.Children.Add(rctBorder); //cdcount++; Border border = new Border(); border.Style = this.Resources["gridCellBorder"] as Style; if (rdcount == 0) { border.BorderThickness = new Thickness(border.BorderThickness.Left, border.BorderThickness.Bottom, border.BorderThickness.Right, border.BorderThickness.Bottom); } if (cdcount == 0) { border.BorderThickness = new Thickness(border.BorderThickness.Right, border.BorderThickness.Top, border.BorderThickness.Right, border.BorderThickness.Bottom); } Grid.SetRow(border, rdcount); Grid.SetColumn(border, cdcount); grid.Children.Add(border); cdcount++; } rdcount++; } } }
private void SetupLinearAxis(LinearAxis linearAxis, DateTime startDate, DateTime endDate) { // Title var defaultMeasurementSystem = ApplicationSettings.DefaultMeasurementSystem; var weightAbbrev = MeasurementSystemFactory.Get(defaultMeasurementSystem).Abbreviation; linearAxis.Title = "Weight (" + weightAbbrev + ")"; // Interval, Range var weightList = _viewModel.Get(startDate, endDate); double? weightRangeMin = null; double? weightRangeMax = null; foreach (var weight in weightList.Select(item => item.Weight)) { if (!weightRangeMin.HasValue || weightRangeMin > weight) { weightRangeMin = weight; } if (!weightRangeMax.HasValue || weightRangeMax < weight) { weightRangeMax = weight; } } weightRangeMin = weightRangeMin ?? GraphDefaultMin; weightRangeMax = weightRangeMax ?? GraphDefaultMax; double graphMinimum; double graphMaximum; if (weightRangeMin != weightRangeMax) { graphMinimum = Math.Floor((float)weightRangeMin / GraphDefaultResolution) * GraphDefaultResolution; graphMaximum = Math.Ceiling((float)weightRangeMax / GraphDefaultResolution) * GraphDefaultResolution; } else { var weightFloor = Math.Floor((float)weightRangeMax / GraphDefaultResolution) * GraphDefaultResolution; graphMaximum = weightFloor + GraphDefaultSpacing; graphMinimum = weightFloor - GraphDefaultSpacing; } if (graphMaximum < 0) { graphMaximum = 0; } linearAxis.Minimum = 0; linearAxis.Maximum = graphMaximum; linearAxis.Minimum = graphMinimum; linearAxis.Interval = Math.Floor((double)(linearAxis.Maximum - linearAxis.Minimum) / GraphDefaultResolution); }