Dev ChartControl

article/2025/11/5 18:18:14

1、ChartControl

绘制曲线图,横坐标表示距离起点距离,纵坐标表示高程,均为double类型值,定义一个数据源的类。

 /// <summary>/// 画图控件数据源/// </summary>public class ChartDatasource{/// <summary>/// 当前位置高度/// </summary>public double Altitude { get; set; }/// <summary>/// 距起点距离/// </summary>public double Length { get; set; }/// <summary>/// 坡度/// </summary>public double Slope { get; set; }}

 

绑定字段

            this.chartControl_Alt.Series[0].ArgumentDataMember = "Length";this.chartControl_Alt.Series[0].ValueDataMembers[0] = "Altitude";this.chartControl_Slope.Series[0].ArgumentDataMember = "Length";this.chartControl_Slope.Series[0].ValueDataMembers[0] = "Slope";

 

构造一<List>,存储坐标点对,赋值即可,作为数据源。

              var sourcelist=new List<ChartDatasource>();sourcelist.Add(new ChartDatasource{Altitude=33,Length=0,Slope=4});sourcelist.Add(new ChartDatasource{Altitude=33,Length=0,Slope=4});sourcelist.Add(new ChartDatasource{Altitude=33,Length=0,Slope=4});sourcelist.Add(new ChartDatasource{Altitude=33,Length=0,Slope=4});.....................chartControl_Alt.DataSource = sourcelist;chartControl_Slope.DataSource = sourcelist;

 

显示效果如下图所示,一个数据类,存有三个字段,但绑定的字段不同,显示不同的结果,作为多个图表的数据源。

 

2、一个图上多条曲线

数据源类

/// <summary>/// 画图控件数据源/// </summary>public class RChartDataSource{/// <summary>/// 点号/// </summary>public string ID{ get; set; }/// <summary>/// 源高程值/// </summary>public double HeightY{ get; set; }/// <summary>/// 对比高程值/// </summary>public double HeightD{get;set;}}

 

之前横坐标为double类型,则控件自动按值大小显示在图表上,这里也可以用string类型为横坐标,设为ID,依此保存为1,2,3,4....

字段绑定

            this.chartControl1.Series[0].ValueDataMembers[0] = "HeightY";this.chartControl1.Series[0].ArgumentDataMember = "ID";this.chartControl1.Series[1].ValueDataMembers[0] = "HeightD";this.chartControl1.Series[1].ArgumentDataMember = "ID";

这里,横坐标均绑定为一个字段ID,纵坐标为各自的值。

            var sourcelist=new List<RChartDataSource>();sourcelist.Add(new RChartDataSource{ID=1,HeightY=35,HeightD=36});sourcelist.Add(new RChartDataSource{ID=2,HeightY=35,HeightD=36});sourcelist.Add(new RChartDataSource{ID=3,HeightY=35,HeightD=36});sourcelist.Add(new RChartDataSource{ID=4,HeightY=35,HeightD=36});sourcelist.Add(new RChartDataSource{ID=5,HeightY=35,HeightD=36});.....................chartControl1.DataSource = sourcelist;

显示结果如下所示:

若数据源列表发生变化,则可以重新赋值

sourcelist.Add(new (new RChartDataSource{ID=,HeightY=,HeightD=});
chartcontrol.DataSource=null; 
chartcontrol.DataSource=sourcelist;

3、其他

a、我们在图表上移动或点击时,需要获得当前鼠标位置所对应的横纵坐标值,可以通过以下方式获得

为ChartControl添加CustomDrawCrosshair事件,事件代码如下

        double Heng = 0;double Zong = 0;private void chartControl_Alt_CustomDrawCrosshair(object sender, CustomDrawCrosshairEventArgs e){if (chartControl_Alt.DataSource != null&&IsClick){var element = e.CrosshairElements;if (element.Count() > 0)Heng = element.ElementAt(0).SeriesPoint.NumericalArgument;Zong = element.ElementAt(0).SeriesPoint.Values[0];}}

 

CrosshairElements还有很多其他属性,可进一步研究,可打断点查看相应属性。这里提供一种并不完善的方式,需要进一步完善。 

 

b、设置ConstanLine线位置

 var axis = chartControl_Alt.Diagram as DevExpress.XtraCharts.XYDiagram;axis.AxisX.ConstantLines[0].AxisValue = Heng;axis.AxisX.ConstantLines[0.Visible = trueaxis.AxisX.ConstantLines[1].AxisValue = 160;axis.AxisX.ConstantLines[1.Visible = true;

//这里的两条线都是垂直于x轴的线,先可以通过代码添加,也可以提前在Run Designer里面添加好初始设置为不可见。

 

Run Designer里面有很多属性可进行设置,对控件显示效果和显示功能进行设置。

转载于:https://www.cnblogs.com/zwcoding/p/9269865.html


http://chatgpt.dhexx.cn/article/brMR9LHq.shtml

相关文章

ChartControl控件

ChartControl控件 ChartControl控件是一个可视化的图表控件&#xff0c;它支持你能想到的所有图形。用于对统计数据的可视化显示。最近我摸索了PivotGridControl控件与ChartControl控件的配合使用。本文简单的描述一下ChartControl控件。 常用的图表类型 通过代码设置图形 //条…

DevExpress中使用ChartControl绘制折线图和导出图表为Excel文件

一、实现效果 ①手动创建线性图表(添加图表标题) ②绘制单条线性图(可实现设置X和Y轴名称、绑定数据、缩放、复选框勾选是否显示、查看指定点信息) ③绘制多条线性图可实现设置X和Y轴名称、绑定数据、缩放、复选框勾选是否显示、查看指定点信息) ④导出图表为Excel 二、…

DEV控件之ChartControl用法

一、总体概述 这个控件包含3层&#xff0c;最外面的chartControl层、中间的XYDiagram层、最里面的Series层。功能非常强大&#xff0c;但同时使用起来也相对复杂&#xff0c;需要各个层之间相互协调设置才能达到自己想要的效果。 二、chartControl层 像DEV的其它控件一样&#…

C# DevExpress组件 - ChartControl图表控件

C# DevExpress组件 - ChartControl图表控件学习-整体感知&#xff08;一&#xff09; 1 逻辑框架图梳理 以逻辑框架图&#xff0c;进行代码验证 2 代码实现 2.1 实现内容 代码实现&#xff1a;添加一个ChartControl图表控件&#xff0c;并提供显示三个变量显示在三个位置 …

C# DevExpress ChartControl用法总结

C# DevExpress ChartControl用法总结 ₯近期使用C#DevExpress制作看板时用到过的ChartControl中的相关图表&#xff0c;在此做个记录&#xff08;未完&#xff09;。 1、Bar&#xff08;柱形图&#xff09; Series series1 new Series("日期", ViewType.Bar) …

DevExpress chartControl 基本结构说明

chartControl 使用教程及chart数据绑定 DevExpress说明ChartControl 结构series 主要Diagram 主要Chart TitlesLegendsAnnotations DevExpress说明 DevExpress是一个功能强大的跨平台控件库&#xff0c;支持winform、VB、WPF、UWP、asp等等&#xff0c; chart图是软件开发中常…

Dev中ChartControl——属性熟悉与简单应用

图表元素之间的关系&#xff1a; 根据DevExpress帮助文档中描述&#xff1a; 创建点图&#xff1a; 1、创建图表 /// <summary> /// 创建图表 /// </summary> private void CreatChart() {// Create a new chart.图表控件ChartControl pointChart new ChartCon…

运用getParameterNames()方法和getParameterValues()方法获取请求参数名称和内容

一.例子代码&#xff1a; 填写信息页面&#xff1a; <!DOCTYPE html> <html> <head> <meta charset"UTF-8"> <title>Insert title here</title> </head> <body> <form action"request_demo04.jsp" m…

使用 String[] values = request.getParameterValues(key);出现的问题 ,Ajax Post 提交数组参数后台无法接收

ajax向服务器提交数组参数多了一个中括号 String[] values request.getParameterValues(key); $.post({}) 直接传递数组会导致如下情况 // 使用一下js会导致如图这种情况var ids [];$(input[name"ids"]:checked).each(function(){ids.push($(this).val());})$.po…

springboot 防止xss 和sql 注入 改写 http 请求 getParameter,getParameterValues,getHeader等方法 有点东西

目录 1.springboot 启动类 引入 过滤器配置 2.过滤器 3.XssAndSqlHttpServletRequestWrapper包装器 包装类 4.修改验证登录代码 这里只写了基础的 了解意思即可 5.测试内容 6.测试结果 7.反黑客小介绍&#xff08;黑客大哥们好小弟这没啥大用O(∩_∩)O~&#xff0c;但…

java web中request.getParameterValues()和request.getParameter()异同

JavaWeb中获取表单的多行值采用request.getParameterValues(&#xff09;方法&#xff0c;request.getParameter()方法获取单个值 <!DOCTYPE html> <html lang"zh_CN"> <head><meta charset"UTF-8"><title>Title</title…

Jsp中getParameter、getParameterValues、getParameterNames和getParameterMap用法详解

以下是一个简单的jsp注册页面&#xff0c;从前端提交的数据 <% page language"java" import"java.util.*" pageEncoding"UTF-8"%> <% String path request.getContextPath(); String basePath request.getScheme()"://"re…

req.getParameterValues 输出前端乱码

前端页面 <% page contentType"text/html;charsetUTF-8" language"java" %> <html> <head><title>登录</title> </head> <body> <% page pageEncoding"UTF-8" %> <div style"text-ali…

jsp内置对象request——getParameterValues的使用

文章目录 前言一、getParameterValues是什么二、使用步骤 1.通过表单传入2.使用数组存取读入表单结果总结 提示&#xff1a;以下是本篇文章正文内容&#xff0c;下面案例可供参考 一、getParameterValues是什么 当控件中有多个选项时&#xff0c;要取到所有值可调用该方法&am…

initWithFormat 和stringWithFormat的区别

差别&#xff1a; 1、initWithFormat是实例办法 只能经由过程 NSString* str [[NSString alloc] initWithFormat:&#xff20;"&#xff05;&#xff20;"&#xff0c;&#xff20;"Hello World"] 调用&#xff0c;然则必须手动release来开释内存资料 2、…

C# string Format

使用C#格式化字符串 转载自博客园&#xff0c;原文连接&#xff1a;https://www.cnblogs.com/FlyingBread/archive/2007/01/18/620287.html&#xff0c;向原文作者献上敬意 1 前言 如果你熟悉Microsoft Foundation Classes&#xff08;MFC&#xff09;的CString&#xff0c;…

NSString函数stringWithFormat与stringWithString的比较

我们经常会初始化一些string使用NSString的stringWithString函数 但使用时发现了一个stringWithString的问题&#xff0c;如图 当参数是nil时&#xff0c;stringWithString会crash&#xff0c;所以使用时必须验证参数不是nil 相比较stringWithFormat就不会crash但返回的str也…

stringWithFormat:用法及注意事项

在ObjectiveC中NSString中有一个 stringWithFormat&#xff1a;方法 常见的输出方式&#xff1a; NSString *height; height [NSString stringWithFormat:"Your height is %d feet, %d inches.",5,11]; NSLog("%",height); 输出结果&#xff1a; 2013-04-…

虚拟机VirtualBox下载与安装、安装Ubuntu超详细图文步骤,对一些配置问题也有所写。

对于机器学习和深度学习来说&#xff0c;Linux系统是必不可少的。而我们在只是学习当中一般不会去重装一个Linux系统&#xff0c;而是去使用虚拟机来使用Linux系统。在VMware与VirtualBox这两款虚拟机的体验上&#xff0c;个人更偏向于后者&#xff0c;因为它所占内存更小&…

安装Windowsxp虚拟机

1.打开VMware&#xff0c;选择创建新的虚拟机&#xff0c;微软windows系统选择典型&#xff0c;而linux系统选择自定义&#xff1a; 2.选择稍后安装操作系统&#xff1a; 3.下一步选择相应合适的版本&#xff0c;选择存放位置&#xff1a; 4.选择合适大小的硬盘给虚拟机&…