C# Chart曲线控件专题

1.控件基本设置

  chart1.ChartAreas[0].AxisY.IsStartedFromZero = false; //设置Y轴自适应chart1.Series["瞬时值"].BorderWidth = 2; // 设置曲线宽度为2个像素,注意[]中写入的Series的Namechart1.Series["瞬时值"].Color = Color.Red; // 设置曲线显示颜色chart1.ChartAreas[0].AxisX.Minimum = 0;  //设置X轴最小值chart1.ChartAreas[0].AxisX.Maximum = 100;//设置X轴最大值//chart1.ChartAreas[0].AxisX.Minimum = Double.NaN;//设置X轴最小值为自适应//chart1.ChartAreas[0].AxisX.Maximum = Double.NaN;//设置X轴最小值为自适应chart1.ChartAreas[0].AxisX.MajorGrid.Enabled = false;//取消chart1X轴方向显示单元格chart1.ChartAreas[0].AxisY.MajorGrid.Enabled = false;//取消chart1Y轴方向显示单元格chart1.Series[0].Points.Clear(); //清除控件上所有点位chart1.Update(); //刷新控件显示chart1.Series[0].Points.RemoveAt(0); //每次移除最早的点,需要配合显示的点数使用

2.曲线鼠标滚轮缩放

   // 添加鼠标滚轮事件  在窗体加载时进行绑定chart1.MouseWheel += Chart1_MouseWheel;private void Chart1_MouseWheel(object sender, MouseEventArgs e){// 获取鼠标滚轮的滚动方向int delta = e.Delta;// 根据滚动方向进行放大或缩小if (delta < 0){// 放大图表chart1.ChartAreas[0].AxisX.ScaleView.ZoomReset();chart1.ChartAreas[0].AxisY.ScaleView.ZoomReset();}else if (delta > 0){// 缩小图表double xMin = chart1.ChartAreas[0].AxisX.ScaleView.ViewMinimum;double xMax = chart1.ChartAreas[0].AxisX.ScaleView.ViewMaximum;double yMin = chart1.ChartAreas[0].AxisY.ScaleView.ViewMinimum;double yMax = chart1.ChartAreas[0].AxisY.ScaleView.ViewMaximum;double posXStart = chart1.ChartAreas[0].AxisX.PixelPositionToValue(e.Location.X) - (xMax - xMin) / 3;double posXFinish = chart1.ChartAreas[0].AxisX.PixelPositionToValue(e.Location.X) + (xMax - xMin) / 3;double posYStart = chart1.ChartAreas[0].AxisY.PixelPositionToValue(e.Location.Y) - (yMax - yMin) / 3;double posYFinish = chart1.ChartAreas[0].AxisY.PixelPositionToValue(e.Location.Y) + (yMax - yMin) / 3;chart1.ChartAreas[0].AxisX.ScaleView.Zoom(posXStart, posXFinish);chart1.ChartAreas[0].AxisY.ScaleView.Zoom(posYStart, posYFinish);}}

3.1 曲线添加数据(添加X轴和Y轴点位)

 chart1.Series[0].ChartType = System.Windows.Forms.DataVisualization.Charting.SeriesChartType.FastLine; //设置曲线样式为线条chart1.Series[0].BorderWidth = 2; // 设置曲线宽度为2个像素,注意[]中写入的Series的Namechart1.Series[0].Color = Color.Red; // 设置曲线显示颜色chart1.Series[0].Name = "Test";    //设置曲线名称for (int i = 0; i < 10; i++){chart1.Series[0].Points.AddXY(i, i*2); //添加点位}

运行结果:

 3.2曲线添加数据(添加Y轴点位)

  chart1.Series[0].ChartType = System.Windows.Forms.DataVisualization.Charting.SeriesChartType.FastLine; //设置曲线样式为线条chart1.Series[0].BorderWidth = 2; // 设置曲线宽度为2个像素,注意[]中写入的Series的Namechart1.Series[0].Color = Color.Red; // 设置曲线显示颜色chart1.Series[0].Name = "Test";    //设置曲线名称chart1.Series[0].Points.AddY(0);//添加点位chart1.Series[0].Points.AddY(20);//chart1.Series[0].Points.AddY(10);//添加点位chart1.Series[0].Points.AddY(0);//添加点位

运行结果:


本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.hqwc.cn/news/540787.html

如若内容造成侵权/违法违规/事实不符,请联系编程知识网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

鸿蒙Harmony应用开发—ArkTS声明式开发(容器组件:Flex)

以弹性方式布局子组件的容器组件。 说明&#xff1a; 该组件从API Version 7开始支持。后续版本如有新增内容&#xff0c;则采用上角标单独标记该内容的起始版本。Flex组件在渲染时存在二次布局过程&#xff0c;因此在对性能有严格要求的场景下建议使用Column、Row代替。Flex组…

express+mysql+vue,从零搭建一个商城管理系统14--快递查询(对接快递鸟)

提示&#xff1a;学习express&#xff0c;搭建管理系统 文章目录 前言一、安装md5&#xff0c;axios&#xff0c;qs二、新建config/logistics.js三、修改routes/order.js四、添加商品到购物车总结 前言 需求&#xff1a;主要学习express&#xff0c;所以先写service部分 快递鸟…

【C语言】五种方法实现C语言中大小写字母的转化

文章目录 &#x1f4dd;tolower/toupper函数&#x1f309;tolower&#x1f320; toupper &#x1f320; ASCII码关系&#x1f309;位操作&#x1f309;宏定义 &#x1f320;小巧第五位&#x1f6a9;总结 &#x1f4dd;tolower/toupper函数 &#x1f309;tolower tolower函数是…

人工智能(AI)+、+了什么?互联网+又是什么?

引言 人工智能&#xff08;Artificial Intelligence&#xff0c;简称AI&#xff09;&#xff0c;作为一门迅猛发展的领域&#xff0c;自20世纪中叶以来一直在不断演进。它涉及计算机科学、机器学习和模式识别等多个学科&#xff0c;旨在开发可以模拟和执行人类智力任务的系统。…

学生考软考合适吗?

可以通过软考的报名要求看出来&#xff0c;软考是没有相关的年龄、学历、工作年限的规定的&#xff0c;所以大学生群体每年报名软考的有很多&#xff0c;在国内政策的支持下&#xff0c;不少的城市开始将这个证书划分到“入户必备”的区域&#xff0c;认可也从国企、央企慢慢过…

K8S日志收集方案-EFK部署

EFK架构工作流程 部署说明 ECK (Elastic Cloud on Kubernetes)&#xff1a;2.7 Kubernetes&#xff1a;1.23.0 文件准备 crds.yaml 下载地址&#xff1a;https://download.elastic.co/downloads/eck/2.7.0/crds.yaml operator.yaml 下载地址&#xff1a;https://download.e…

音频读取之wave和liborsa

wave 常见的语音信号处理python库有librosa, scipy, soundfile等等。wave库是python的标准库&#xff0c;对于python来说相对底层&#xff0c;wave不支持压缩/解压&#xff0c;但支持单声道/立体声语音的读取。 读取音频 import wave #导入库file_path D:/ba.wav #文件路径…

cesium-可视化区域分析

全部代码 <template><div id="cesiumContainer" style="height: 100vh;"></div><div id="toolbar" style="position: fixed;top:20px;left:220px;"><el-breadcrumb :separator-icon="ArrowRight&quo…

第2篇:1位二选一数据选择器

Q&#xff1a;创建1位二选一数据选择器&#xff0c;并在DE2-115开发板上通过滑动开关和LEDR硬件来实现。 A&#xff1a;基本原理&#xff1a;两个1位数据输入(x&#xff0c;y)&#xff0c;一个1位数据s控制&#xff08;高、低电平&#xff09;选择(x&#xff0c;y)其中一个数据…

xss.haozi.me靶场“0x00-0x0A”通关教程

君衍. 一、靶场介绍二、第一关 0x00 不做限制三、第二关 0x01 文本闭合标签绕过四、第三关 0x02 双引号闭合绕过五、第四关 0x03 过滤括号六、第五关 0x04 编码绕过七、第六关 0x05 注释闭合绕过八、第七关 0x06 换行绕过九、第八关 0x07 删除标签十、第九关 0x08 多加空格绕过…

[Redis]——Redis持久化的两种方式RDB、AOF

目录 RDB快照模式 概念&#xff1a; 触发时机&#xff1a; 异步做快照 AOF追加模式 概念&#xff1a; 触发时机&#xff1a; bgrewriteaof命令&#xff1a; 比较两种模式&#xff1a; RDB快照模式 概念&#xff1a; RDB模式就是保存当前Redis的状态到本地磁盘文件&am…

Vue2 父子组件某一属性的双向绑定

原本&#xff1a;父组件使用props传值给孩子组件初始化&#xff0c;触发事件子组件使用$emit传值给父组件&#xff0c;很麻烦后来&#xff1a;使用computed和$event例子代码&#xff1a; <template><div class"box">grandpa <el-input v-model"…