chartControl 使用教程及chart数据绑定

  • DevExpress说明
  • ChartControl 结构
    • series ==主要==
    • Diagram ==主要==
    • Chart Titles
    • Legends
    • Annotations

DevExpress说明

DevExpress是一个功能强大的跨平台控件库,支持winform、VB、WPF、UWP、asp等等,
chart图是软件开发中常用的控件,将数据转为点图,趋势图或者饼图等,而chartControl是DevExpress其中功能强大的可视化控件。

ChartControl 结构


官方定义基本结构如上,在chart设计中,不过我们大部分在是对Diagram及Series设置。
下图是line series 例图结构注释。

series 主要

series是chart控件中具体的数据的体现,类型主要包括四大类,点图,线图,柱状图,区域图。
series位于Diagram中,包含多个point,point为数据实体,需要指定series的对应的Diagram哪个x轴与哪个y轴,有主轴次轴之分。

一条series里的point可以通过series.Points.Add(new SeriesPoint(x,y)添加,也可根据series的DateSource数据绑定。对于绑定的数据实体来说,有多个属性,需要指定哪个属性作为x和y,其中series的ArgumentDataMenmber指定的x轴取值,ValueDataMenmber指定y轴取值,具体绑定会在后文中做例程详细描述。

可指定argument 与value的 scaletype为数值型、时间型或者字符型。关系x轴,y轴绘制。设置为具体类型是,在Diagram里的x/y轴里会有对应scale Type 可做具体的自定义。如时间型


另外需要着重提的是属性CrossHair ,该属性可显示当前鼠标悬停位置距离最近的点的信息展示。当开始crossHair时,默认展示X值:Y值,可用pattern做数值格式化,如时间统计至时、分、秒等,或者数值型保留指定位数小数。

Diagram 主要

Diagram为chart控件中的基本元素,意为图表,包含panel、网格线,主x/y轴,次x/y轴等元素,从视觉角度来看,该元素为chart主体。

DevExpress 已经实现了chart缩放拖拽以及坐标轴范围控制,通过Diagram 的 Enabnle X\Y- Scolling及 Zoom 属性控制是否开启滚轮缩放及鼠标拖拽,Diagram里的AxisX、AxisY的visual range 与Whole range 控制坐标轴显示范围。


另外需要注意的是,devexpress考虑了point动态增加时,点数x轴刻度堆叠或者刻度太多的问题的问题,可手动指定定义X轴,Y轴刻度疏密程度(Numeric Scale Options等),及密集刻度是堆叠刻度文本的显示相关设置。配合visual range与Whole range 可以做到当series中的point动态增加时,动态设置显示范围和整个统计范围,只展示最新的几个刻度。代码示例

XYDiagram diagram = chartControl1.Diagram as XYDiagram;
//wholeRange必须大于VisualRange,
//当VisualRange小于wholeRange时说明当前chart处于缩放状态,显示了部分刻度
// 整个range最大值最小值
diagram.AxisX.WholeRange.MinValue = 500;
diagram.AxisX.WholeRange.MaxValue = 2000;
// 一起设置
diagram.AxisX.WholeRange.SetMinMaxValues(500, 2000);// range可视化最大值最小值
diagram.AxisX.VisualRange.MinValue = 1000;
diagram.AxisX.VisualRange.MaxValue = 1500;
//一起设置.
diagram.AxisX.VisualRange.SetMinMaxValues(1000, 1500);
//x轴刻度类型,共三类,Automatic:自动聚合  ,manual:根据手动设置ScaleOptions里的measureUnit聚合, Continuous:不聚合
Diagram1.AxisX.NumericScaleOptions.ScaleMode = DevExpress.XtraCharts.ScaleMode.Automatic;
Diagram1.AxisX.NumericScaleOptions.MeasureUnit = NumericMeasureUnit.Ones

Chart Titles

chart Titles,字面意思,图表标题,展示一些描述性文字,可以有多条。

Legends

图例,当存在复数Series时,用以区分不同series,不至于太多杂乱。

devexpress 提供了几种legend的makemode。个人感觉比较有用的是CheckBoxAndMarker,该图例带checkBox,可以取消勾选,以隐藏对应的series

this.chart.Legend.MarkerMode = DevExpress.XtraCharts.LegendMarkerMode.CheckBoxAndMarker;


Annotations

注解,标记图表中的特殊点,含文本注解与图片注解。

DevExpress chartControl 基本结构说明相关推荐

  1. DevExpress ChartControl大数据加载时有哪些性能优化方法

    DevExpress ChartControl加载大数据量数据时的性能优化方法有哪些? 关于图表优化,可从以下几个方面解决: 1.关闭不需要的可视化的元素(如LineMarkers, Labels等) ...

  2. DevExpress ChartControl ToolTipPointPattern和ToolTipSeriesPattern

    原本只是想改一下鼠标放到曲线上的tip显示的小数点位数 然后就发现他这个属性还挺多,多到有点看不懂 然后就写了小demo测试 demo代码 // Create a series and add poi ...

  3. DevExpress——ChartControl知多少(C#)

    目前在做的这个项目后端是使用.NET框架在做,前端是借助DevExpress框架做开发,由于是基于Winform的页面实现,于是DevExpress提供了全套的Winform的解决方案,弥补了Winf ...

  4. C# WPF图表控件之ChartControl用法指南①

    " 引言部分,总领全篇文章的中心内容." WPF的DevExpress ChartControl是一种功能强大的可视化工具,可帮助您将数据显示为二维或伪三维条形图.区域.线和许多其 ...

  5. Winform + Devexpress 实现看板效果

    环境:VS2019.Sql Server R2 2008.Devexpress ChartControl.layoutControl 最终效果: 1.设置背景图(LayoutControl) this ...

  6. 自动化软件的设计工具

    自动化软件主要包括了组态软件和SCADA 类型的软件,组态软件主要完成大量的参数配置,图形化编程和界面设计.尽管目前有许多窗口软件的设计工具和语言可以选择,例如基于Windows,Andriod,Li ...

  7. 【原】为DevExpress的ChartControl添加Y轴控制 和 GridControl中指定列添加超级链接

    一.控制ChartControl的Y轴范围 使用Devexpress中的CharControl控件,需要控制AxisY轴的显示范围,需要使用该控件的BoundDataChanged事件,具体代码如下: ...

  8. DevExpress的TreeList怎样设置数据源使其显示成单列树形结构

    场景 Winform控件-DevExpress18下载安装注册以及在VS中使用: https://blog.csdn.net/BADAO_LIUMANG_QIZHI/article/details/1 ...

  9. WinForm DevExpress使用-(ChartControl控件绘制图表)

    最近因为公司项目需要用到WinForm的DecExpress控件,在这里把一些使用方法总结一下. DevExpress中有一个专门用来绘制图表的插件ChartControl,可以绘制折线图.饼状图.柱 ...

最新文章

  1. wordpress jquery加载如何实现?
  2. 目标检测模型从训练到部署!
  3. 华为王成录:把安卓最核心部分换得差不多了 手机升级鸿蒙OS 2.0水到渠成
  4. C3F:首个开源人群计数算法框架
  5. SSM整理笔记1——SSM网站初步功能设计
  6. C#中gridView常用属性和技巧介绍
  7. emoji表情mysql报错_让MySQL支持Emoji表情 mysql 5.6
  8. 【LeetCode】【字符串】题号:*520. 检测大写字母
  9. dsp 有fft程序吗_Python 中 FFT 快速傅里叶分析
  10. 常见的几种最优化方法总结
  11. 【小专题】正交试验法设计测试用例
  12. 北京航天大学考研计算机科学与技术分数线,北京航空航天大学计算机科学与技术考研...
  13. qchart实现图片缩放 qt_Qt图形图像开发曲线图表模块QChart库缩放/平移详细方法与实例...
  14. 2-软件生命周期模型
  15. android 设置画布颜色,android – 如何设置笔触颜色以在画布上绘制矩形?
  16. 七轴分拣机器人设计与MATLAB仿真
  17. 【计算方法】解线性方程组的直接法
  18. Windows 缺失msvcp140.dll文件
  19. 解决:网络文件夹目前是以其他用户名和密码进行映射的
  20. Abaqus常用命令

热门文章

  1. 记一次误删python-2.7.5-58.0.1.el7.x86_64重新安装yum软件的经历
  2. Android与iOS系统架构对比
  3. 这 14 个短代码,蕴含着丰富的 Python 编程思维
  4. 麦肯锡30秒电梯理论
  5. 这个形似微波炉的自动维修机器,可帮助维修iPhone碎屏
  6. 魔法java_可别在Java代码中写那么多魔法值了
  7. YOLO v2目标检测详解一box生成与转换
  8. 汽车诊断系统相关知识
  9. 优思学院|我应该选择六西格玛绿带还是黑带的认证课程?
  10. 航测相关软件教材分享