//1/2/2014 NS added public void SetBarGraphForTopQuota(string servername) { BiggestQuotaWebChart.Series.Clear(); DataTable dt = VSWebBL.DashboardBL.DominoServerHealthBLL.Ins.SetBarGraphForTopQuota(servername); Series series1 = new Series("Mail File", ViewType.Bar); series1.ArgumentDataMember = dt.Columns["Title"].ToString(); ValueDataMemberCollection seriesValueDataMembers = (ValueDataMemberCollection)series1.ValueDataMembers; seriesValueDataMembers.AddRange(dt.Columns["PercentQuota"].ToString()); //Addnig series to mailchartbox control BiggestQuotaWebChart.Series.Add(series1); ((XYDiagram)BiggestQuotaWebChart.Diagram).PaneLayoutDirection = PaneLayoutDirection.Horizontal; XYDiagram seriesXY = (XYDiagram)BiggestQuotaWebChart.Diagram; //X and Y aixs detals seriesXY.AxisY.Title.Text = "Percent of Quota"; seriesXY.AxisX.Title.Text = "Database Name"; seriesXY.AxisY.Title.Visible = true; seriesXY.AxisX.Title.Visible = true; seriesXY.AxisX.Label.ResolveOverlappingOptions.AllowHide = false; seriesXY.AxisX.Label.ResolveOverlappingOptions.AllowRotate = true; seriesXY.AxisX.Label.ResolveOverlappingOptions.AllowStagger = true; //12/11/2013 NS added seriesXY.AxisY.Label.ResolveOverlappingOptions.AllowRotate = false; //Enabling the series BiggestQuotaWebChart.Legend.Visible = false; ChartTitle title = new ChartTitle(); if (servername == "All" || servername == "") { title.Text = "All Servers - Top 20 Largest Mail Files as a % of Quota"; } else { title.Text = servername + " - Top 20 Largest Mail Files as a % of Quota"; } BiggestQuotaWebChart.Titles.Clear(); BiggestQuotaWebChart.Titles.Add(title); AxisBase axis = ((XYDiagram)BiggestQuotaWebChart.Diagram).AxisX; ((BarSeriesView)series1.View).ColorEach = false; BiggestQuotaWebChart.DataSource = dt; BiggestQuotaWebChart.DataBind(); }
public void SetBarGraphForItemSizeDatabase(string servername) { chartItemSizeDatabase.Series.Clear(); DataTable dt = VSWebBL.DashboardBL.ExchangeServerDetailsBL.Ins.SetBarGraphForTopMailDatabase(servername, "FileSize"); Series series1 = new Series("Mail Server", ViewType.Bar); series1.ArgumentDataMember = dt.Columns["Title"].ToString(); ValueDataMemberCollection seriesValueDataMembers = (ValueDataMemberCollection)series1.ValueDataMembers; seriesValueDataMembers.AddRange(dt.Columns["ItemCount"].ToString()); //Addnig series to mailchartbox control chartItemSizeDatabase.Series.Add(series1); ((XYDiagram)chartItemSizeDatabase.Diagram).PaneLayoutDirection = PaneLayoutDirection.Horizontal; XYDiagram seriesXY = (XYDiagram)chartItemSizeDatabase.Diagram; //X and Y aixs detals seriesXY.AxisY.Title.Text = "Message Count"; seriesXY.AxisX.Title.Text = "Mail User"; seriesXY.AxisY.Title.Visible = true; seriesXY.AxisX.Title.Visible = true; seriesXY.AxisX.Label.ResolveOverlappingOptions.AllowHide = false; seriesXY.AxisX.Label.ResolveOverlappingOptions.AllowRotate = true; seriesXY.AxisX.Label.ResolveOverlappingOptions.AllowStagger = true; //12/11/2013 NS added seriesXY.AxisY.Label.ResolveOverlappingOptions.AllowRotate = false; //Enabling the series chartItemSizeDatabase.Legend.Visible = false; ChartTitle title = new ChartTitle(); if (servername == "All") { title.Text = "All Servers Top 20 Biggest Message Count"; } else { title.Text = servername + " Top 20 Biggest Message Count"; } chartItemSizeDatabase.Titles.Clear(); chartItemSizeDatabase.Titles.Add(title); AxisBase axis = ((XYDiagram)chartItemSizeDatabase.Diagram).AxisX; ((BarSeriesView)series1.View).ColorEach = false; chartItemSizeDatabase.DataSource = dt; chartItemSizeDatabase.DataBind(); }
private void xrChart1_BeforePrint(object sender, System.Drawing.Printing.PrintEventArgs e) { DataTable dt; xrChart1.Series.Clear(); dt = VSWebBL.DashboardBL.SametimeHealthBL.Ins.GetSametimeSummaryStats(this.StartDate.Value.ToString(), this.EndDate.Value.ToString(), this.StatName.Value.ToString()); if (dt.Rows.Count > 0) { xrChart1.SeriesDataMember = dt.Columns["ServerName"].ToString(); xrChart1.SeriesTemplate.ArgumentDataMember = "Date"; xrChart1.SeriesTemplate.ValueDataMembers.AddRange(new string[] { dt.Columns["StatValue"].ToString() }); AxisBase axisy = ((XYDiagram)xrChart1.Diagram).AxisY; //4/18/2014 NS modified for VSPLUS-312 axisy.Range.AlwaysShowZeroLevel = true; xrChart1.DataSource = dt; } }
//根据数据起止时间 设置X轴时间刻度 public static void DateTimeAlignment(TimeSpan TimeSpan, AxisBase axis) { if (TimeSpan.TotalDays > 730) { axis.DateTimeGridAlignment = DateTimeMeasurementUnit.Year; axis.DateTimeMeasureUnit = DateTimeMeasurementUnit.Month; axis.DateTimeOptions.FormatString = "%y-%M-%d HH:mm:ss"; axis.GridSpacing = 1; } else if ((730 >= TimeSpan.TotalDays) && (TimeSpan.TotalDays > 310)) { axis.DateTimeGridAlignment = DateTimeMeasurementUnit.Month; axis.DateTimeMeasureUnit = DateTimeMeasurementUnit.Day; axis.DateTimeOptions.FormatString = "%y-%M-%d HH:mm:ss"; axis.GridSpacing = TimeSpan.TotalDays / 30 / 10; } else if ((310 >= TimeSpan.TotalDays) && (TimeSpan.TotalDays > 10)) { axis.DateTimeGridAlignment = DateTimeMeasurementUnit.Day; axis.DateTimeMeasureUnit = DateTimeMeasurementUnit.Hour; axis.DateTimeOptions.FormatString = "%y-%M-%d HH:mm:ss"; axis.GridSpacing = TimeSpan.TotalDays / 10; } else if ((10 >= TimeSpan.TotalDays) && (TimeSpan.TotalHours > 10)) { axis.DateTimeGridAlignment = DateTimeMeasurementUnit.Hour; axis.DateTimeMeasureUnit = DateTimeMeasurementUnit.Minute; axis.DateTimeOptions.FormatString = "%y-%M-%d HH:mm:ss"; axis.GridSpacing = TimeSpan.TotalHours / 10; } else if ((TimeSpan.TotalHours <= 10) && TimeSpan.TotalMinutes > 10) { axis.DateTimeGridAlignment = DateTimeMeasurementUnit.Minute; axis.DateTimeMeasureUnit = DateTimeMeasurementUnit.Second; axis.DateTimeOptions.FormatString = "HH:mm:ss"; axis.GridSpacing = TimeSpan.TotalMinutes / 10; } else if (TimeSpan.TotalMinutes <= 10) { axis.DateTimeGridAlignment = DateTimeMeasurementUnit.Second; axis.DateTimeMeasureUnit = DateTimeMeasurementUnit.Second; axis.DateTimeOptions.FormatString = "HH:mm:ss"; axis.GridSpacing = TimeSpan.TotalSeconds > 0 ? TimeSpan.TotalSeconds / 10 : 1; } }
/// <inheritdoc/> public override void Destroy() { // Clear children first foreach (var child in children) { child.Destroy(); } children.Clear(); if (xAxis != null) { xAxis.TransformChanged -= AxisTransformChanged; } xAxis = null; if (yAxis != null) { yAxis.TransformChanged -= AxisTransformChanged; } yAxis = null; base.Destroy(); }
/// <summary> /// ies the axis. /// </summary> /// <param name="scale">The scale.</param> /// <param name="axis">The axis.</param> /// <param name="title">The title.</param> /// <returns>System.Double.</returns> public static double YAxis(ScaleBase scale, AxisBase axis, RadzenAxisTitle title) { var ticks = scale.Ticks(axis.TickDistance); double length = 0; for (var y = ticks.Start; y <= ticks.End; y += ticks.Step) { var text = axis.Format(scale, y); length = Math.Max(length, TextMeasurer.TextWidth(text)); } if (!String.IsNullOrEmpty(title.Text)) { length += title.Size + 32; } length += 9 + axis.StrokeWidth; return(Math.Max(24, length)); }
public void ChangeInputKey(string name, KeyCode newKey, bool negative = false) { AxisBase a = ReturnAxis(name); if (a == null) { Debug.Log(name + " dun goofd"); return; } if (negative) { a.Nkey = newKey; a.NUIButton.ChangeKeyText(a.Nkey.ToString()); } else { a.Pkey = newKey; a.PUIButton.ChangeKeyText(a.Pkey.ToString()); } InputManager.Instance.AssignKeyboardInput(a); }
private void OnAxisPlacementChanged(AxisBase obj) { if (obj is XAxis) { Grid.SetColumn(obj, 1); switch (((XAxis)obj).XAxisPlacement) { case XAxisPlacement.Bottom: Grid.SetRow(obj, 2); break; case XAxisPlacement.Top: Grid.SetRow(obj, 0); break; default: throw new ArgumentOutOfRangeException(); } } else { Grid.SetRow(obj, 1); switch (((YAxis)obj).YAxisPlacement) { case YAxisPlacement.Left: Grid.SetColumn(obj, 0); break; case YAxisPlacement.Right: Grid.SetColumn(obj, 2); break; default: throw new ArgumentOutOfRangeException(); } } }
public DataTable SetGraphForDeviceType(string servername) { deviceTypeWebChart.Series.Clear(); DataTable dt = VSWebBL.DashboardBL.LotusTravelerHealthBLL.Ins.SetGraphForDeviceType(servername); Series series = new Series("DeviceType", ViewType.Bar); series.ArgumentDataMember = dt.Columns["DeviceName"].ToString(); ValueDataMemberCollection seriesValueDataMembers = (ValueDataMemberCollection)series.ValueDataMembers; seriesValueDataMembers.AddRange(dt.Columns["No_of_Users"].ToString()); deviceTypeWebChart.Series.Add(series); deviceTypeWebChart.Legend.Visible = false; ((SideBySideBarSeriesView)series.View).ColorEach = true; XYDiagram seriesXY = (XYDiagram)deviceTypeWebChart.Diagram; seriesXY.AxisX.Title.Text = "Device Type"; seriesXY.AxisX.Title.Visible = true; seriesXY.AxisX.Label.ResolveOverlappingOptions.AllowRotate = true; seriesXY.AxisX.Label.ResolveOverlappingOptions.AllowHide = false; seriesXY.AxisY.Title.Text = "Users"; seriesXY.AxisY.Title.Visible = true; AxisBase axisy = ((XYDiagram)deviceTypeWebChart.Diagram).AxisY; axisy.Range.AlwaysShowZeroLevel = false; deviceTypeWebChart.DataSource = dt; deviceTypeWebChart.DataBind(); return(dt); }
/// <summary> /// Gets the point in the dataset that is nearest the specified point. /// </summary> /// <param name = "point">The point.</param> /// <param name = "dpn">The nearest point (data coordinates).</param> /// <param name = "spn">The nearest point (screen coordinates).</param> /// <returns></returns> public override bool GetNearestPoint(ScreenPoint point, out DataPoint dpn, out ScreenPoint spn) { spn = default(ScreenPoint); dpn = default(DataPoint); double minimumDistance = double.MaxValue; foreach (var p in points) { var sp = AxisBase.Transform(p, XAxis, YAxis); double dx = sp.x - point.x; double dy = sp.y - point.y; double d2 = dx * dx + dy * dy; if (d2 < minimumDistance) { dpn = p; spn = sp; minimumDistance = d2; } } return(minimumDistance < double.MaxValue); }
public void GraphForDaysUp(string sortby, string stype) { ServerUpWebChartControl.Series.Clear(); DataTable dt = VSWebBL.DashboardBL.KeyMetricsBL.Ins.GetServerDaysUp(sortby, stype); Series series = new Series("Duration", ViewType.Bar); series.ArgumentDataMember = dt.Columns["Server"].ToString(); series.Label.PointOptions.ValueNumericOptions.Format = NumericFormat.General; ((SideBySideBarSeriesView)series.View).ColorEach = true; ((SideBySideBarSeriesLabel)series.Label).LineVisible = true; ((SideBySideBarSeriesLabel)series.Label).TextOrientation = TextOrientation.Horizontal; ((SideBySideBarSeriesLabel)series.Label).PointOptions.PointView = PointView.Values; ValueDataMemberCollection seriesValueDataMembers = (ValueDataMemberCollection)series.ValueDataMembers; seriesValueDataMembers.AddRange(dt.Columns["Duration"].ToString()); series.LabelsVisibility = DevExpress.Utils.DefaultBoolean.True; ServerUpWebChartControl.Series.Add(series); ServerUpWebChartControl.SeriesTemplate.Label.PointOptions.PointView = PointView.Values; ServerUpWebChartControl.SeriesTemplate.LabelsVisibility = DevExpress.Utils.DefaultBoolean.True; ServerUpWebChartControl.Legend.Visible = false; XYDiagram seriesXY = (XYDiagram)ServerUpWebChartControl.Diagram; ((DevExpress.XtraCharts.XYDiagram)ServerUpWebChartControl.Diagram).Rotated = true; //11/16/2013 NS modified the AllowRotate option to false, otherwise the server names were unreadable seriesXY.AxisX.Label.ResolveOverlappingOptions.AllowRotate = false; seriesXY.AxisX.Label.ResolveOverlappingOptions.AllowHide = false; AxisBase axisy = ((XYDiagram)ServerUpWebChartControl.Diagram).AxisY; //4/18/2014 NS modified for VSPLUS-312 axisy.Range.AlwaysShowZeroLevel = true; //2/6/2013 NS modified chart height calculations based on the number of rows if (dt.Rows.Count > 0) { if (dt.Rows.Count < 10) { if (dt.Rows.Count == 1) { ServerUpWebChartControl.Height = 100; } else { ServerUpWebChartControl.Height = ((dt.Rows.Count) * 60) + 20; } } else { if (dt.Rows.Count >= 10 && dt.Rows.Count < 100) { ServerUpWebChartControl.Height = ((dt.Rows.Count) * 40) + 20; } else { if (dt.Rows.Count >= 100) { //11/18/2013 NS modified - the height needs to be greater than *10 //ServerUpWebChartControl.Height = ((dt.Rows.Count) * 10) + 20; ServerUpWebChartControl.Height = ((dt.Rows.Count) * 20) + 20; } } } } ServerUpWebChartControl.DataSource = dt; ServerUpWebChartControl.DataBind(); }
public override string GetAxisLabel(float value, AxisBase axis) { return(DateTimeOffset.FromUnixTimeSeconds((long)value).ToString(_formatString ?? "MMM d")); }
public override string GetAxisLabel(float value, AxisBase axis) { return(AniListEnum.GetDisplayValue <T>((int)value)); }
public override string GetAxisLabel(float value, AxisBase axis) { return((Math.Ceiling(value / CeilingValue) * CeilingValue).ToString()); }
public void GetAxesFromPoint(ScreenPoint pt, out AxisBase xaxis, out AxisBase yaxis) { Model.GetAxesFromPoint(pt, out xaxis, out yaxis); }
public void GraphforResponseTime() { ResponseWebChartControl.Series.Clear(); DataTable dt = VSWebBL.DashboardBL.ActiveDirectoryServerDetailsBL.Ins.GetResponseTime(); Series series = new Series("usercount", ViewType.Bar); series.ArgumentDataMember = dt.Columns["Server"].ToString(); //10/30/2013 NS added - point labels on series series.LabelsVisibility = DevExpress.Utils.DefaultBoolean.True; ValueDataMemberCollection seriesValueDataMembers = (ValueDataMemberCollection)series.ValueDataMembers; seriesValueDataMembers.AddRange(dt.Columns["ResponseTime"].ToString()); ResponseWebChartControl.Series.Add(series); ResponseWebChartControl.Legend.Visible = false; ((SideBySideBarSeriesView)series.View).ColorEach = true; //AxisBase axisx = ((XYDiagram)deviceTypeWebChart.Diagram).AxisX; XYDiagram seriesXY = (XYDiagram)ResponseWebChartControl.Diagram; // seriesXY.AxisX.Title.Text = "Milliseconds"; // seriesXY.AxisX.Title.Visible = true; ((DevExpress.XtraCharts.XYDiagram)ResponseWebChartControl.Diagram).Rotated = true; //11/16/2013 NS modified the AllowRotate option to false, otherwise the server names were unreadable seriesXY.AxisX.Label.ResolveOverlappingOptions.AllowRotate = false; seriesXY.AxisX.Label.ResolveOverlappingOptions.AllowHide = false; seriesXY.AxisY.Title.Text = "Milliseconds"; seriesXY.AxisY.Title.Visible = true; seriesXY.AxisX.Title.Text = " Servers"; seriesXY.AxisX.Title.Visible = true; AxisBase axisy = ((XYDiagram)ResponseWebChartControl.Diagram).AxisY; //4/18/2014 NS modified for VSPLUS-312 axisy.Range.AlwaysShowZeroLevel = true; //2/6/2013 NS modified chart height calculations based on the number of rows if (dt.Rows.Count > 0) { if (dt.Rows.Count < 4) { ResponseWebChartControl.Height = 200; } else { if (dt.Rows.Count >= 4 && dt.Rows.Count < 10) { ResponseWebChartControl.Height = ((dt.Rows.Count) * 50) + 20; } else { if (dt.Rows.Count >= 10 && dt.Rows.Count < 100) { ResponseWebChartControl.Height = ((dt.Rows.Count) * 40) + 20; } else { if (dt.Rows.Count >= 100) { ResponseWebChartControl.Height = ((dt.Rows.Count) * 20) + 20; } } } } } //ResponseWebChartControl.Width = new Unit(1000); ResponseWebChartControl.DataSource = dt; ResponseWebChartControl.DataBind(); }
public void ZoomAt(AxisBase axis, double factor, double x) { axis.ZoomAt(factor, x); }
public void Reset(AxisBase axis) { axis.Reset(); }
public void GetAxesFromPoint(ScreenPoint pt, out AxisBase xaxis, out AxisBase yaxis) { Model.GetAxesFromPoint(pt, out xaxis, out yaxis); }
public void Zoom(AxisBase axis, double p1, double p2) { axis.Zoom(p1, p2); }
public void Reset(AxisBase axis) { axis.Reset(); }
public void Pan(AxisBase axis, double dx) { axis.Pan(dx); }
public static void SetDefaultYAxis(DependencyObject element, AxisBase value) { element.SetValue(DefaultYAxisProperty, value); }
public static void SetAlternativeYAxis(DependencyObject element, AxisBase value) { element.SetValue(AlternativeYAxisProperty, value); }
public void SetAxis(double scrollOffset, AnyChart parent, AxisBase axis, ChartOrientation axisOrientation, bool isSubDivisions) { mScrollOffset = scrollOffset; raycastTarget = false; color = Color.white; mAxis = axis; mParent = parent; mIsSubDivisions = isSubDivisions; mOrientation = axisOrientation; if (mMesh == null) { mMesh = new CanvasChartMesh(true); mMesh.RecycleText = true; } mMesh.Clear(); if (isSubDivisions) { mAxis.AddMainDivisionToChartMesh(mScrollOffset, mParent, transform, mMesh, mOrientation); } else { mAxis.AddSubdivisionToChartMesh(mScrollOffset, mParent, transform, mMesh, mOrientation); } mTexts = mMesh.CurrentTextObjects; if (mMesh.TextObjects != null) { foreach (BillboardText text in mMesh.TextObjects) { ((IInternalUse)parent).InternalTextController.AddText(text); } } canvasRenderer.materialCount = 1; if (mDispose != null) { ChartCommon.SafeDestroy(mDispose); } float tiling = 1f; if (!isSubDivisions) { if (axis.SubDivisions.Material != null) { mMaterial = axis.SubDivisions.Material; mDispose = new Material(mMaterial); mDispose.hideFlags = HideFlags.DontSave; material = mDispose; tiling = GetTiling(axis.SubDivisions.MaterialTiling); } } else { if (axis.MainDivisions.Material != null) { mMaterial = axis.MainDivisions.Material; mDispose = new Material(mMaterial); mDispose.hideFlags = HideFlags.DontSave; material = mDispose; tiling = GetTiling(axis.MainDivisions.MaterialTiling); } } mTiling = tiling; if (mDispose != null) { if (mDispose.HasProperty("_ChartTiling")) { mDispose.SetFloat("_ChartTiling", tiling); } } SetAllDirty(); Rebuild(CanvasUpdate.PreRender); mMesh.DestoryRecycled(); }
public void ZoomAt(AxisBase axis, double factor, double x) { axis.ZoomAt(factor, x); }
public string GetFormattedValue(float value, AxisBase axis) { ISharedPreferences prefs = PreferenceManager.GetDefaultSharedPreferences(_context); return(prefs.GetString("CurrencySymbolSelected", "") + value); }
public void Pan(AxisBase axis, double dx) { axis.Pan(dx); }
public void GraphforResponseTime(string param, string sname, string stype, string UserType) { CostperUserservedWebChartControl.Series.Clear(); DataTable dt = new DataTable(); if (TypeComboBox.Text == "Exchange") { UserType = UserTypeComboBox.Text; dt = VSWebBL.DashboardBL.KeyMetricsBL.Ins.GetCostperuserserveddata(param, sname, stype, UserType); } else { dt = VSWebBL.DashboardBL.KeyMetricsBL.Ins.GetCostperuserserveddataForDomino(param, sname, stype); } for (int i = 0; i < dt.Rows.Count; i++) { decimal avgusers = Convert.ToDecimal(dt.Rows[i]["StatValue"].ToString() == "" ? "0" : dt.Rows[i]["StatValue"].ToString());//dt.Rows[i]["MonthlyOperatingCost"] decimal MonthlyopeartingCost = Convert.ToDecimal(dt.Rows[i]["MonthlyOperatingCost"].ToString() == "" ? "0" : dt.Rows[i]["MonthlyOperatingCost"].ToString()); if (avgusers != 0) { dt.Rows[i]["StatValue"] = Math.Round((MonthlyopeartingCost / avgusers), 2); } else { dt.Rows[i]["StatValue"] = "0"; } } DataView dv = dt.AsDataView(); if (SortRadioButtonList1.Value.ToString() == "1") { dv.Sort = "ServerName DESC"; } else { dv.Sort = "StatValue ASC"; } DataTable sortedDT = dv.ToTable(); Series series = new Series("usercount", ViewType.Bar); series.ArgumentDataMember = "servername"; //10/30/2013 NS added - point labels on series series.LabelsVisibility = DevExpress.Utils.DefaultBoolean.True; ValueDataMemberCollection seriesValueDataMembers = (ValueDataMemberCollection)series.ValueDataMembers; seriesValueDataMembers.AddRange("StatValue"); CostperUserservedWebChartControl.Series.Add(series); CostperUserservedWebChartControl.Legend.Visible = false; ((SideBySideBarSeriesView)series.View).ColorEach = true; //AxisBase axisx = ((XYDiagram)deviceTypeWebChart.Diagram).AxisX; XYDiagram seriesXY = (XYDiagram)CostperUserservedWebChartControl.Diagram; // seriesXY.AxisX.Title.Text = "Milliseconds"; // seriesXY.AxisX.Title.Visible = true; ((DevExpress.XtraCharts.XYDiagram)CostperUserservedWebChartControl.Diagram).Rotated = true; //11/16/2013 NS modified the AllowRotate option to false, otherwise the server names were unreadable seriesXY.AxisX.Label.ResolveOverlappingOptions.AllowRotate = false; seriesXY.AxisX.Label.ResolveOverlappingOptions.AllowHide = false; seriesXY.AxisY.Title.Text = "Cost Per User Served"; seriesXY.AxisY.Title.Visible = true; AxisBase axisy = ((XYDiagram)CostperUserservedWebChartControl.Diagram).AxisY; //4/18/2014 NS modified for VSPLUS-312 axisy.Range.AlwaysShowZeroLevel = true; //series.Label.PointOptions.ValueNumericOptions.Format = NumericFormat.Number; //series.Label.PointOptions.ValueNumericOptions.Precision = 0; axisy.Range.AlwaysShowZeroLevel = true; seriesXY.AxisY.GridSpacingAuto = true; //double min = Convert.ToDouble(((XYDiagram)CostperUserservedWebChartControl.Diagram).AxisY.Range.MinValue); //double max = Convert.ToDouble(((XYDiagram)CostperUserservedWebChartControl.Diagram).AxisY.Range.MaxValue); //int gs = (int)((max - min) / 5); //if (gs == 0) // gs = 1; //((XYDiagram)CostperUserservedWebChartControl.Diagram).AxisY.GridSpacingAuto = false; //((XYDiagram)CostperUserservedWebChartControl.Diagram).AxisY.GridSpacing = gs; //2/6/2013 NS modified chart height calculations based on the number of rows if (sortedDT.Rows.Count > 0) { if (sortedDT.Rows.Count < 4) { CostperUserservedWebChartControl.Height = 200; } else { if (sortedDT.Rows.Count >= 4 && sortedDT.Rows.Count < 10) { CostperUserservedWebChartControl.Height = ((sortedDT.Rows.Count) * 50) + 20; } else { if (sortedDT.Rows.Count >= 10 && sortedDT.Rows.Count < 100) { CostperUserservedWebChartControl.Height = ((sortedDT.Rows.Count) * 40) + 20; } else { if (sortedDT.Rows.Count >= 100) { CostperUserservedWebChartControl.Height = ((sortedDT.Rows.Count) * 20) + 20; } } } } } //10/20/2015 NS modified for VSPLUS-2072 UI uiobj = new UI(); uiobj.RecalibrateChartAxes(CostperUserservedWebChartControl.Diagram, "Y", "int", "int"); CostperUserservedWebChartControl.DataSource = sortedDT; CostperUserservedWebChartControl.DataBind(); }
public void Zoom(AxisBase axis, double p1, double p2) { axis.Zoom(p1, p2); }
protected virtual void SetupXtraChartsAxis(AxisBase axis) { var axisX = axis as AxisXBase; var axisX3D = axis as AxisX3D; var axisXRadar = axis as RadarAxisX; //Y axis does not use QualitativeScaleOptions /* * var axisY = axis as AxisYBase; * var axisY3D = axis as AxisY3D; * var axisYRadar = axis as RadarAxisY; */ if (AggregateFunction.HasValue) { axis.DateTimeScaleOptions.AggregateFunction = AggregateFunction.Value; axis.NumericScaleOptions.AggregateFunction = AggregateFunction.Value; if (axisX != null) { axisX.QualitativeScaleOptions.AggregateFunction = AggregateFunction.Value; } } axis.DateTimeScaleOptions.AutoGrid = !NoAutoGrid; axis.NumericScaleOptions.AutoGrid = !NoAutoGrid; if (axisX != null) { axisX.QualitativeScaleOptions.AutoGrid = !NoAutoGrid; } if (axisX3D != null) { axisX3D.QualitativeScaleOptions.AutoGrid = !NoAutoGrid; } if (axisXRadar != null) { axisXRadar.QualitativeScaleOptions.AutoGrid = !NoAutoGrid; } if (ScaleMode.HasValue) { axis.DateTimeScaleOptions.ScaleMode = ScaleMode.Value; axis.NumericScaleOptions.ScaleMode = ScaleMode.Value; } if (GridOffset.HasValue) { axis.DateTimeScaleOptions.GridOffset = GridOffset.Value; axis.NumericScaleOptions.GridOffset = GridOffset.Value; if (axisX != null) { axisX.QualitativeScaleOptions.GridOffset = GridOffset.Value; } if (axisX3D != null) { axisX3D.QualitativeScaleOptions.GridOffset = GridOffset.Value; } if (axisXRadar != null) { axisXRadar.QualitativeScaleOptions.GridOffset = GridOffset.Value; } } if (GridSpacing.HasValue) { axis.DateTimeScaleOptions.GridSpacing = GridSpacing.Value; axis.NumericScaleOptions.GridSpacing = GridSpacing.Value; if (axisX != null) { axisX.QualitativeScaleOptions.GridSpacing = GridSpacing.Value; } if (axisX3D != null) { axisX3D.QualitativeScaleOptions.GridSpacing = GridSpacing.Value; } if (axisXRadar != null) { axisXRadar.QualitativeScaleOptions.GridSpacing = GridSpacing.Value; } } if (MeasureUnitMultiplier.HasValue) { axis.DateTimeScaleOptions.MeasureUnitMultiplier = MeasureUnitMultiplier.Value; } if (MinGridSpacingLength.HasValue) { axis.DateTimeScaleOptions.MinGridSpacingLength = MinGridSpacingLength.Value; axis.NumericScaleOptions.MinGridSpacingLength = MinGridSpacingLength.Value; if (axisX != null) { axisX.QualitativeScaleOptions.MinGridSpacingLength = MinGridSpacingLength.Value; } if (axisX3D != null) { axisX3D.QualitativeScaleOptions.MinGridSpacingLength = MinGridSpacingLength.Value; } if (axisXRadar != null) { axisXRadar.QualitativeScaleOptions.MinGridSpacingLength = MinGridSpacingLength.Value; } } if (ProcessMissingPoints.HasValue) { axis.DateTimeScaleOptions.ProcessMissingPoints = ProcessMissingPoints.Value; axis.NumericScaleOptions.ProcessMissingPoints = ProcessMissingPoints.Value; } if (DateTimeGridAlignment.HasValue) { axis.DateTimeScaleOptions.GridAlignment = DateTimeGridAlignment.Value; } if (DateTimeMeasureUnit.HasValue) { axis.DateTimeScaleOptions.MeasureUnit = DateTimeMeasureUnit.Value; } if (NumericGridAlignment.HasValue) { axis.NumericScaleOptions.CustomGridAlignment = NumericGridAlignment.Value; } if (NumericMeasureUnit.HasValue) { axis.NumericScaleOptions.CustomMeasureUnit = NumericMeasureUnit.Value; } var majorLineColor = Utils.ColorFromString(MajorLineColor); if (majorLineColor != System.Drawing.Color.Empty) { axis.GridLines.Color = majorLineColor; axis.GridLines.Visible = true; } if (MajorLineDashStyle.HasValue) { axis.GridLines.LineStyle.DashStyle = MajorLineDashStyle.Value; axis.GridLines.Visible = true; } if (MajorLineJoin.HasValue) { axis.GridLines.LineStyle.LineJoin = MajorLineJoin.Value; axis.GridLines.Visible = true; } if (MajorLineThickness.HasValue) { axis.GridLines.LineStyle.Thickness = MajorLineThickness.Value; axis.GridLines.Visible = true; } var minorLineColor = Utils.ColorFromString(MinorLineColor); if (minorLineColor != System.Drawing.Color.Empty) { axis.GridLines.MinorColor = minorLineColor; axis.GridLines.MinorVisible = true; } if (MinorLineDashStyle.HasValue) { axis.GridLines.MinorLineStyle.DashStyle = MinorLineDashStyle.Value; axis.GridLines.MinorVisible = true; } if (MinorLineJoin.HasValue) { axis.GridLines.MinorLineStyle.LineJoin = MinorLineJoin.Value; axis.GridLines.MinorVisible = true; } if (MinorLineThickness.HasValue) { axis.GridLines.MinorLineStyle.Thickness = MinorLineThickness.Value; axis.GridLines.MinorVisible = true; } if (ShowLines) { axis.GridLines.Visible = true; } if (ShowMinorLines) { axis.GridLines.MinorVisible = true; } if (Interlaced) { axis.Interlaced = true; } var interlacedColor = Utils.ColorFromString(InterlacedColor); if (interlacedColor != System.Drawing.Color.Empty) { axis.InterlacedColor = interlacedColor; } if (Logarithmic) { axis.Logarithmic = true; } if (LogarithmicBase.HasValue) { axis.LogarithmicBase = LogarithmicBase.Value; } if (MinorCount.HasValue) { axis.MinorCount = MinorCount.Value; } if (AlwaysShowZeroLevel) { axis.WholeRange.AlwaysShowZeroLevel = true; } if (MinValue != null) { axis.WholeRange.MinValue = MinValue; } if (MaxValue != null) { axis.WholeRange.MaxValue = MaxValue; } if (SideMarginsValue.HasValue) { axis.WholeRange.SideMarginsValue = SideMarginsValue.Value; axis.WholeRange.AutoSideMargins = false; } if (axis is Axis2D axis2D) { if (Alignment.HasValue) { axis2D.Alignment = Alignment.Value; } var color = Utils.ColorFromString(Color); if (color != System.Drawing.Color.Empty) { axis2D.Color = color; } if (InterlacedFillMode.HasValue) { axis2D.InterlacedFillStyle.FillMode = InterlacedFillMode.Value; switch (InterlacedFillMode.Value) { case DevExpress.XtraCharts.FillMode.Empty: break; case DevExpress.XtraCharts.FillMode.Solid: break; case DevExpress.XtraCharts.FillMode.Gradient: if (axis2D.InterlacedFillStyle.Options is RectangleGradientFillOptions gradientOptions) { var color2 = Utils.ColorFromString(InterlacedColor2); if (color2 != System.Drawing.Color.Empty) { gradientOptions.Color2 = color2; } if (InterlacedGradientMode.HasValue) { gradientOptions.GradientMode = InterlacedGradientMode.Value; } } break; case DevExpress.XtraCharts.FillMode.Hatch: if (axis2D.InterlacedFillStyle.Options is HatchFillOptions hatchOptions) { var color2 = Utils.ColorFromString(InterlacedColor2); if (color2 != System.Drawing.Color.Empty) { hatchOptions.Color2 = color2; } if (InterlacedHatchStyle.HasValue) { hatchOptions.HatchStyle = InterlacedHatchStyle.Value; } } break; } } if (LabelVisibilityMode.HasValue) { axis2D.LabelVisibilityMode = LabelVisibilityMode.Value; } if (Thickness.HasValue) { axis2D.Thickness = Thickness.Value; } if (TickmarkCrossAxis) { axis2D.Tickmarks.CrossAxis = true; } if (MajorTickmarkLength.HasValue) { axis2D.Tickmarks.Length = MajorTickmarkLength.Value; } if (MajorTickmarkThickness.HasValue) { axis2D.Tickmarks.Thickness = MajorTickmarkThickness.Value; } if (MinorTickmarkLength.HasValue) { axis2D.Tickmarks.Length = MinorTickmarkLength.Value; } if (MinorTickmarkThickness.HasValue) { axis2D.Tickmarks.Thickness = MinorTickmarkThickness.Value; } if (HideMajorTickmarks) { axis2D.Tickmarks.Visible = false; } if (HideMinorTickmarks) { axis2D.Tickmarks.MinorVisible = false; } if (Visibility.HasValue) { axis2D.Visibility = Visibility.Value ? DevExpress.Utils.DefaultBoolean.True : DevExpress.Utils.DefaultBoolean.False; } if (VisibleInPanes != null && VisibleInPanes.Length > 0) { if (ChartContext.Chart.Diagram is not XYDiagram chartDiagram) { throw new Exception("Property VisibleInPanes can be set only in 2D XY charts."); } foreach (var paneName in VisibleInPanes) { var pane = chartDiagram.Panes[paneName]; if (pane == null) { throw new Exception($"Cannot find pane '{paneName}' to setup VisibleInPanes."); } axis2D.SetVisibilityInPane(true, pane); } } if (HiddenInPanes != null && HiddenInPanes.Length > 0) { if (ChartContext.Chart.Diagram is not XYDiagram chartDiagram) { throw new Exception("Property HiddenInPanes can be set only in 2D XY charts."); } foreach (var paneName in HiddenInPanes) { var pane = chartDiagram.Panes[paneName]; if (pane == null) { throw new Exception($"Cannot find pane '{paneName}' to setup HiddenInPanes."); } axis2D.SetVisibilityInPane(false, pane); } } } if (axis is Axis axisEx) { if (AutoScaleBreaks) { axisEx.AutoScaleBreaks.Enabled = true; } if (AutoScaleBreaksMaxCount.HasValue) { axisEx.AutoScaleBreaks.MaxCount = AutoScaleBreaksMaxCount.Value; axisEx.AutoScaleBreaks.Enabled = true; } var scaleBreakColor = Utils.ColorFromString(ScaleBreakColor); if (scaleBreakColor != System.Drawing.Color.Empty) { axisEx.ScaleBreakOptions.Color = scaleBreakColor; } if (ScaleBreakSize.HasValue) { axisEx.ScaleBreakOptions.SizeInPixels = ScaleBreakSize.Value; } if (ScaleBreakStyle.HasValue) { axisEx.ScaleBreakOptions.Style = ScaleBreakStyle.Value; } if (Reverse) { axisEx.Reverse = Reverse; } } if (axis is RadarAxis axisRadar) { if (InterlacedFillMode.HasValue) { axisRadar.InterlacedFillStyle.FillMode = InterlacedFillMode.Value; switch (InterlacedFillMode.Value) { case DevExpress.XtraCharts.FillMode.Empty: break; case DevExpress.XtraCharts.FillMode.Solid: break; case DevExpress.XtraCharts.FillMode.Gradient: if (axisRadar.InterlacedFillStyle.Options is PolygonGradientFillOptions polygonOptions) { var color2 = Utils.ColorFromString(InterlacedColor2); if (color2 != System.Drawing.Color.Empty) { polygonOptions.Color2 = color2; } if (InterlacedGradientMode.HasValue) { polygonOptions.GradientMode = InterlacedRadarGradientMode.Value; } } break; case DevExpress.XtraCharts.FillMode.Hatch: if (axisRadar.InterlacedFillStyle.Options is HatchFillOptions hatchOptions) { var color2 = Utils.ColorFromString(InterlacedColor2); if (color2 != System.Drawing.Color.Empty) { hatchOptions.Color2 = color2; } if (InterlacedHatchStyle.HasValue) { hatchOptions.HatchStyle = InterlacedHatchStyle.Value; } } break; } } } }
/// <summary> /// sets the axis settings. Calling this method will cause the axisgenerator to create the axis mesh /// </summary> /// <param name="parent"></param> /// <param name="axis"></param> /// <param name="axisOrientation"></param> /// <param name="isSubDivisions"></param> public void SetAxis(double scrollOffset, AnyChart parent, AxisBase axis, ChartOrientation axisOrientation, bool isSubDivisions) { mScroll = scrollOffset; mParent = parent; mAxis = axis; mOrientation = axisOrientation; mIsSubDivision = isSubDivisions; if (mMesh == null) { mMesh = new WorldSpaceChartMesh(2); mMesh.RecycleText = true; } mMesh.Clear(); mMesh.Orientation = axisOrientation; mAxis = axis; if (isSubDivisions) { axis.AddSubdivisionToChartMesh(scrollOffset, parent, transform, mMesh, axisOrientation); } else { axis.AddMainDivisionToChartMesh(scrollOffset, parent, transform, mMesh, axisOrientation); } if (mMesh.TextObjects != null) { foreach (BillboardText text in mMesh.TextObjects) { ((IInternalUse)parent).InternalTextController.AddText(text); } } mTexts = mMesh.CurrentTextObjects; Mesh newMesh = mMesh.Generate(mCreated); mCreated = newMesh; newMesh.hideFlags = HideFlags.DontSave; if (mFilter == null) { mFilter = GetComponent <MeshFilter>(); } mFilter.sharedMesh = newMesh; MeshCollider collider = GetComponent <MeshCollider>(); if (collider != null) { collider.sharedMesh = newMesh; } ChartCommon.CleanMesh(newMesh, ref mCleanMesh); MeshRenderer renderer = GetComponent <MeshRenderer>(); if (renderer != null) { Material m = mAxis.MainDivisions.Material; float tiling = GetTiling(parent, axisOrientation, mAxis.MainDivisions); if (isSubDivisions) { m = mAxis.SubDivisions.Material; tiling = GetTiling(parent, axisOrientation, mAxis.SubDivisions); } mMaterial = m; if (m != null) { ChartCommon.SafeDestroy(mDispose); mDispose = new Material(m); mDispose.hideFlags = HideFlags.DontSave; renderer.sharedMaterial = mDispose; mTiling = tiling; if (mDispose.HasProperty("_ChartTiling")) { mDispose.SetFloat("_ChartTiling", mTiling); } } } mMesh.DestoryRecycled(); }
public string GetFormattedValue(float value, AxisBase axis) { return(RezultingStrings[(int)(value)]); }
public void SetGraphForHttpSessions(string paramValue, string serverName) { httpSessionsWebChart.Series.Clear(); DataTable dt = VSWebBL.DashboardBL.QuickrHealthBLL.Ins.SetGraphForHttpSessions(paramValue, serverName); if (dt.Rows.Count <= 0) { } else { Series series = new Series("HttpSessions", ViewType.Line); series.Visible = true; series.ArgumentDataMember = dt.Columns["Date"].ToString(); ValueDataMemberCollection seriesValueDataMembers = (ValueDataMemberCollection)series.ValueDataMembers; seriesValueDataMembers.AddRange(dt.Columns["StatValue"].ToString()); httpSessionsWebChart.Series.Add(series); XYDiagram seriesXY = (XYDiagram)httpSessionsWebChart.Diagram; seriesXY.AxisX.Title.Text = "Time"; seriesXY.AxisX.Title.Visible = true; seriesXY.AxisY.Title.Text = "Value"; seriesXY.AxisY.Title.Visible = true; //1/9/2013 NS commented out constant line for Quickr server since there is no HTTP_MaxConfiguredConnections //value anywhere in the Quickr table /* * ConstantLine constantLine1 = new ConstantLine("Constant Line 1"); * seriesXY.AxisY.ConstantLines.Add(constantLine1); * constantLine1.AxisValue = dt.Rows[0][2].ToString(); * constantLine1.Visible = true; * constantLine1.ShowBehind = false; * constantLine1.Title.Visible = true; * constantLine1.Title.Text = "Threshold : " + dt.Rows[0][2].ToString(); * constantLine1.Title.TextColor = Color.Red; * constantLine1.Title.Antialiasing = false; * constantLine1.Title.Font = new Font("Tahoma", 10, FontStyle.Regular); * constantLine1.Title.ShowBelowLine = false; * constantLine1.Title.Alignment = ConstantLineTitleAlignment.Near; * constantLine1.Color = Color.Red; * constantLine1.LineStyle.DashStyle = DashStyle.Solid; */ //constantLine1.LineStyle.Thickness = 2; ((LineSeriesView)series.View).LineMarkerOptions.Size = 8; ((LineSeriesView)series.View).LineMarkerOptions.Color = Color.White; AxisBase axisx = ((XYDiagram)httpSessionsWebChart.Diagram).AxisX; //axisx.DateTimeGridAlignment = DateTimeMeasurementUnit.Day; axisx.GridSpacingAuto = false; axisx.MinorCount = 15; axisx.GridSpacing = 1; //axisx.DateTimeOptions.Format = DateTimeFormat.Custom; //axisx.DateTimeOptions.FormatString = "dd/MM HH:mm"; if (paramValue == "hh") { //4/18/2014 NS commented out for VSPLUS-312 //axisx.DateTimeGridAlignment = DateTimeMeasurementUnit.Hour; axisx.DateTimeMeasureUnit = DateTimeMeasurementUnit.Minute; axisx.DateTimeOptions.Format = DateTimeFormat.ShortTime; } else { //4/18/2014 NS commented out for VSPLUS-312 //axisx.DateTimeGridAlignment = DateTimeMeasurementUnit.Day; axisx.DateTimeOptions.Format = DateTimeFormat.ShortDate; } axisx.Range.SideMarginsEnabled = true; axisx.GridLines.Visible = false; AxisBase axisy = ((XYDiagram)httpSessionsWebChart.Diagram).AxisY; axisy.Range.AlwaysShowZeroLevel = false; axisy.Range.SideMarginsEnabled = true; axisy.GridLines.Visible = true; ((LineSeriesView)series.View).Color = Color.Blue; httpSessionsWebChart.Legend.Visible = false; httpSessionsWebChart.DataSource = dt; httpSessionsWebChart.DataBind(); } }
private void chartControl1_CustomDrawAxisLabel(object sender, CustomDrawAxisLabelEventArgs e) { AxisBase axis = e.Item.Axis; if (axis.Tag == null) { return; } var tag = axis.Tag.ToString(); switch (tag) { case "x": string valueX = e.Item.AxisValue.ToString().Trim(); if (!_visibleAxisXLableText.Contains(valueX)) { e.Item.Text = string.Empty; } break; case "y": double valueY = CommonHelper.StringToDouble(e.Item.AxisValue.ToString()); e.Item.Text = valueY.ToString("F2"); if (valueY == _preClose) { e.Item.TextColor = Color.White; } else if (valueY < _preClose) { e.Item.TextColor = Color.Green; } else if (valueY > _preClose) { e.Item.TextColor = Color.FromArgb(204, 51, 0); } break; case "y1": double valueY1 = CommonHelper.StringToDouble(e.Item.AxisValue.ToString()); e.Item.Text = valueY1.ToString("P2"); if (valueY1 == 0) { e.Item.TextColor = Color.White; } else if (valueY1 < 0) { e.Item.Text = e.Item.Text.Substring(1, e.Item.Text.Length - 1); e.Item.TextColor = Color.Green; } else if (valueY1 > 0) { e.Item.TextColor = Color.FromArgb(204, 51, 0); } break; case "y2": default: break; } }