Winform中实现ZedGraph新增自定义Y轴上下限、颜色、标题功能
场景
Winform中实现ZedGraph的多条Y轴(附源码下载):
https://blog.csdn.net/BADAO_LIUMANG_QIZHI/article/details/100132245
在上面实现显示多条自定义Y轴的效果上,改进实现自定义新增Y轴功能。
关注公众号
霸道的程序猿
获取编程相关电子书、教程推送与免费下载。
示例代码下载
https://download.csdn.net/download/badao_liumang_qizhi/11653210
实现
主窗体添加按钮,点击之后弹出Y轴设置界面。
private void button12_Click(object sender, EventArgs e){addY = new AddY();addY.Show();}
其中addY是对应要弹窗显示的窗体对象,其设计如下
此窗体有两个EditText,用来存储Y轴的上下限,然后使用RadioGroup用来设置标题的选择,然后使用
ColorEditPicker进行颜色的选择,以上的控件都是使用的DevExpress的控件。
在点击新增按钮时将控件上的所有属性赋值给声明的YAxis对象。
private void button1_Click(object sender, EventArgs e){YAxis y = new YAxis();//标题y.Title.Text = this.radioGroup1.Text;//颜色y.Color = this.colorPickEdit1.Color;//下限y.Scale.Min = Double.Parse(this.textEdit1.Text);//上限y.Scale.Max = Double.Parse(this.textEdit2.Text);if (setYaxisEvent != null){setYaxisEvent(y);}}
这里使用的是事件与委托进行跨窗体传递对象。
在AddY当前页面代码中
//委托的定义
public delegate void SetYaxisDelegete(YAxis s);
//事件声明
public static event SetYaxisDelegete setYaxisEvent;
然后在主页面Form1中的初始化方法中进行委托的订阅
//添加Y轴
AddY.setYaxisEvent += new AddY.SetYaxisDelegete(addYaxis);
此时传递了addYaxis方法名
方法代码:
public void addYaxis(YAxis y){//如果是新增第二条Y轴if (ycount == 1){//第二条Y轴标题myPane.Y2Axis.Title.Text = y.Title.Text.ToString();//第二条Y轴下限myPane.Y2Axis.Scale.Min = y.Scale.Min;//第二条Y轴上限myPane.Y2Axis.Scale.Max = y.Scale.Max;//设置颜色myPane.Y2Axis.Color = y.Color;//设置刻度线字体颜色myPane.Y2Axis.Scale.FontSpec.FontColor = y.Color;//设置标题字体颜色myPane.Y2Axis.Title.FontSpec.FontColor = y.Color;//让第二条Y轴显示myPane.Y2Axis.IsVisible = true;ycount++;//关闭窗口addY.Close();zedGraphControl1.Invalidate();}//否则就是新增第三条及以上else{//int yIndex = myPane.YAxisList.Count+1;// 创建第yIndex条Y轴YAxis yAxisNew = new YAxis(y.Title.Text.ToString());yAxisNew.Scale.Min = y.Scale.Min;yAxisNew.Scale.Max = y.Scale.Max;//设置Y轴颜色yAxisNew.Color = y.Color;//设置刻度线字体颜色yAxisNew.Scale.FontSpec.FontColor = y.Color;//设置标题字体颜色yAxisNew.Title.FontSpec.FontColor = y.Color;//yAxisNew.Type = AxisType.Text;//显示小刻度 是false则看不到效果//yAxisNew.MinorGrid.IsVisible = true;// turn off the opposite tics so the Y2 tics don't show up on the Y axis//关闭相反的tics,使y2 tics不会显示在y轴上yAxisNew.MajorTic.IsInside = true;yAxisNew.MinorTic.IsInside = true;yAxisNew.MajorTic.IsOpposite = true;yAxisNew.MinorTic.IsOpposite = true;// Align the Y2 axis labels so they are flush to the axis//对齐Y2轴标签,使其与轴平齐//yAxisNew.Scale.Align = AlignP.Inside;//添加到Y轴的listmyPane.YAxisList.Add(yAxisNew);//关闭窗口addY.Close();zedGraphControl1.Invalidate();}}
效果
Winform中实现ZedGraph新增自定义Y轴上下限、颜色、标题功能相关推荐
- 在WinForm中使用ZedGraph实现多Y轴曲线展示
在WinForm中使用ZedGraph实现多Y轴曲线展示 背景 实现思路 效果图 主要功能 关键代码 完整代码下载 背景 在很多业务场景中都会用到基于一个时间轴(X轴)的多个曲线(温度.压力.能量.功 ...
- Winform中设置ZedGraph多条Y轴时坐标轴左右显示设置
场景 Winform中实现ZedGraph的多条Y轴(附源码下载): https://blog.csdn.net/BADAO_LIUMANG_QIZHI/article/details/1001322 ...
- Winform中设置ZedGraph多条Y轴时与多条曲线一一对应
场景 Winform中实现ZedGraph的多条Y轴(附源码下载): https://blog.csdn.net/BADAO_LIUMANG_QIZHI/article/details/1001322 ...
- Winforn中设置ZedGraph多条Y轴时曲线刻度不均匀问题解决
场景 Winform中实现ZedGraph的多条Y轴(附源码下载): https://blog.csdn.net/BADAO_LIUMANG_QIZHI/article/details/1001322 ...
- Winform中实现ZedGraph不显示y=0这条刻度线
场景 Winforn中设置ZedGraph曲线图的属性.坐标轴属性.刻度属性: https://blog.csdn.net/BADAO_LIUMANG_QIZHI/article/details/10 ...
- 史上最全Winform中使用ZedGraph教程与资源汇总整理(附资源下载)
场景 C#窗体应用中使用ZedGraph曲线插件绘制图表: https://blog.csdn.net/BADAO_LIUMANG_QIZHI/article/details/99716066 Win ...
- Winform中设置多条Y轴时新增的Y轴刻度不显示问题解决
场景 Winform中实现ZedGraph的多条Y轴(附源码下载): https://blog.csdn.net/BADAO_LIUMANG_QIZHI/article/details/1001322 ...
- Winform中设置ZedGraph的多条Y轴的标题和刻度不显示十次幂
场景 Winform中设置ZedGraph的坐标轴的标题和刻度不显示十次幂: https://blog.csdn.net/BADAO_LIUMANG_QIZHI/article/details/106 ...
- Winform中设置ZedGraph鼠标悬浮显示距离最近曲线上的点的坐标值和X轴与Y轴的标题
场景 Winform中设置ZedGraph鼠标双击获取距离最近曲线上的点的坐标值: https://blog.csdn.net/BADAO_LIUMANG_QIZHI/article/details/ ...
最新文章
- ***Xcode Interface Builder或Storyboard中可建立那两种连接?
- 由于c语言是由字符流组成的,C语言试题及答案
- Java基础知识——异常Throwable和Exception
- 四种形态图解_涨停板战法的四种形态(图解)
- etcd raft library设计原理和使用
- 思维导图_教学工具思维导图
- 计算机专业选电科还是华科,西交、华科与两电一邮:5所高校怎么选?工科选西交,学IT选北邮...
- c oracle 参数赋值,利用c#反射实现实体类生成以及数据获取与赋值
- 消消乐 游戏算法html,Vue实现开心消消乐游戏算法
- jdk目录详解及其使用方法
- python 绝对值_Python绝对值– abs()
- android版 git客户端下载,Pocket Git 是 Android 手机上一个 Git 客户端工具
- CDH和CM介绍及搭建
- 认养农业菜园认租如何助力农业发展?
- java实现汉诺塔游戏(递归)(附超详细易懂注释)
- 消息中间件---选型分析
- 一个可直接使用的轻量级博客开源系统
- 机器学习 第三节 第九课
- 小白如何制作一个微信小程序
- deepin/linux下svn客户端工具
热门文章
- pgsql 筛选中文字符正则_「每日一练」巧用Python对字符串进行筛选
- 三层架构用户登录代码c语言,三层架构实现简单的用户登录代码
- Spring 初识Aop JDK动态代理实现 原理初显
- 根据屏幕分辨率获取css,根据判断浏览器类型屏幕分辨率自动调用不同CSS的代码...
- python文件名带日期变量_Python实现文件按照日期命名的方法
- alias cli3 配置_vue-cli3全面配置详解
- php foreach方法,forEach方法怎么使用
- mysql查询出去年某月_Mysql 查询某年,某季度,某月,某天搜索方法总结
- python在人工智能应用锁_解读! Python在人工智能中的作用
- php protected 的继承,14 PHP 类的继承 [public protected private] parent 构造方法 析构方法 重写 最终类和方法 设计模式...