DevExpress20:XtraCharts控件实现图表
发布时间:2021-01-07 15:03:43 所属栏目:系统 来源:网络整理
导读:副标题#e# 一、总体概述 官方文档: https://docs.devexpress.com/WindowsForms/8117/controls-and-libraries/chart-control ChartControl控件主要包括Chart Title、Legend、Annotations、Diagram、Series五部分;如图: 二、chartControl层XYDiagram层 ch
数据可以自定义,返回类型为DataTable即可。 2.3、根据数据创建柱状图 BuilderDevBarChart() { chartControl2.Series.Clear(); Series _barSeries = ""= ";x轴 _barSeries.ValueDataMembers[Y轴 _barSeries.DataSource = CreateBarData(); _barSeries.SetColorEach(); chartControl2.Series.Add(_barSeries);_barSeries.LegendPointOptions.PointView = PointView.ArgumentAndValues; chartControl2.SetXLableAngle(-35); chartControl2.SetCrosshair(); chartControl2.Legend.Direction = LegendDirection.LeftToRight; chartControl2.Legend.AlignmentHorizontal = LegendAlignmentHorizontal.Center; chartControl2.Legend.AlignmentVertical = LegendAlignmentVertical.BottomOutside; chartControl2.AddTitle(学院学生数量柱状图); } 2.4、用到的方法 class ChartUtils { <summary> 增加数据筛选 </summary> <param name="SeriesBase"></param> <param name="columnName">列名称<param name="value">列名称对应的筛选数值<param name="dataFilterCondition">DataFilterCondition枚举</param> void AddDataFilter(this SeriesBase series,255);">string columnName,255);">object value,DataFilterCondition dataFilterCondition) { series.DataFilters.Add(new DataFilter(columnName,value.GetType().FullName,dataFilterCondition,value)); } 设置X轴Lable角度 <param name="chart">ChartControl<param name="angle">角度void SetXLableAngle(this ChartControl chart,0);"> angle) { XYDiagram _xyDiagram = (XYDiagram)chart.Diagram; if (_xyDiagram != ) _xyDiagram.AxisX.Label.Angle = angle; } 设置Y轴Lable角度 void SetYLableAngle( (XYDiagram)chart.Diagram; _xyDiagram.AxisY.Label.Angle = angle; } 设置ColorEach <param name="colorEach">是否设置成ColorEachvoid SetColorEach(this Series series,255);">bool colorEach) { SeriesViewColorEachSupportBase colorEachView = (SeriesViewColorEachSupportBase)series.View; if (colorEachView != ) { colorEachView.ColorEach = colorEach; } } 设置是否显示十字标线 <param name="crosshair">是否显示十字标线void SetCrosshair( crosshair) { chart.CrosshairEnabled = crosshair ? DefaultBoolean.True : DefaultBoolean.False; chart.CrosshairOptions.ShowArgumentLabels = crosshair; chart.CrosshairOptions.ShowArgumentLine = crosshair; chart.CrosshairOptions.ShowValueLabels = crosshair; chart.CrosshairOptions.ShowValueLine = crosshair; } 新增ChartControl的Title文字 <param name="title">Title文字void AddTitle( title) { chart.Titles.Clear(); 先清除以前的标题 ChartTitle _title = ChartTitle(); _title.Text = title; chart.Titles.Add(_title); } 饼状Series设置成百分比显示 Series series) { PieSeriesView) { ((PiePointOptions)series.PointOptions).PercentOptions.ValueAsPercent = ; ((PiePointOptions)series.PointOptions).ValueNumericOptions.Format = NumericFormat.Percent; ((PiePointOptions)series.PointOptions).ValueNumericOptions.Precision = ; } } 饼状Series设置显示格式,是以数字还是百分号显示 SetPieNumber(Series series) { PieSeriesView) { 设置为值 ((PiePointOptions)series.PointOptions).PercentOptions.ValueAsPercent = NumericFormat.Number; ((PiePointOptions)series.PointOptions).ValueNumericOptions.Precision = ChartControl设置标题 <param name="chartControl"></param> <param name="HTitle"></param> void SetHZTitle(ref ChartControl chartControl,0);"> HTitle) { chartControl.Titles.Clear(); 先清除以前的标题 横标题设置 ChartTitle titles = new ChartTitle(); 声明标题 titles.Text = HTitle; 名称 titles.TextColor = System.Drawing.Color.Black; 颜色 titles.Indent = 5; 设置距离 值越小柱状图就越大 titles.Font = new Font(Tahoma14,FontStyle.Bold); 设置字体 titles.Dock = ChartTitleDockStyle.Top; 设置对齐方式 titles.Alignment = StringAlignment.Center; 居中对齐 chartControl.Titles.Add(titles); 添加标题 } }实现结果: (编辑:应用网_阳江站长网) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |
站长推荐