Winform中设置ZedGraph多条Y轴时坐标轴左右显示设置
场景
Winform中实现ZedGraph的多条Y轴(附源码下载):
https://blog.csdn.net/BADAO_LIUMANG_QIZHI/article/details/100132245
在上面实现显示多条自定义Y轴的效果上,效果是左边一条Y轴,第二条在右边显示,然后第三条以及以后都在左边显示。
上面实现的效果
ZedGraph的GraphPane对象的自带YAxis和Y2Axis代表一左一右两个坐标轴对象。
默认显示左边的YAxis对象,右边的Y2Xis需要设置才能显示。
如果要继续添加,在左边则在YAxisList中添加,在右边则在Y2AxisList中添加。
注:
博客主页:
https://blog.csdn.net/badao_liumang_qizhi
关注公众号
霸道的程序猿
获取编程相关电子书、教程推送与免费下载。
实现
右边显示坐标设置
//第二条Y轴标题
myPane.Y2Axis.Title.Text = "第二条Y轴标题";
//第二条Y轴字体
myPane.Y2Axis.Title.FontSpec = myFont;
//让第二条Y轴显示
myPane.Y2Axis.IsVisible = true;
// 创建第三条Y轴
YAxis yAxis3 = new YAxis("第三条Y轴标题");
//添加到Y轴的list
myPane.YAxisList.Add(yAxis3);
如果想让坐标轴都显示在左边
// 设置第一条Y轴
myPane = SetYAxisStyle(myPane, yList[]);
//循环剩下的Y轴
for (int i = ; i < yList.Count; i++)
{
YAxis yAxisNew = new YAxis(yList[i].Title);
myPane = SetNewYAxisStyle(myPane, yAxisNew, yList[i]);
}
设置第一条Y轴的方法
public static GraphPane SetYAxisStyle(GraphPane mypane, YAxisModel yAxisModel)
{
mypane.YAxis.Title.Text = yAxisModel.Title;
mypane.YAxis.Title.FontSpec.FontColor = System.Drawing.ColorTranslator.FromHtml(yAxisModel.Color);
mypane.YAxis.Scale.Min = yAxisModel.Min;
mypane.YAxis.Scale.Max = yAxisModel.Max;
mypane.YAxis.Scale.LabelGap = 0f;
mypane.YAxis.Scale.Align = AlignP.Outside;
mypane.YAxis.Scale.FontSpec.Size = Global.FONT_SIZE;
mypane.YAxis.Color = System.Drawing.ColorTranslator.FromHtml(yAxisModel.Color);
mypane.YAxis.Title.FontSpec.FontColor = System.Drawing.ColorTranslator.FromHtml(yAxisModel.Color);
mypane.YAxis.Scale.FontSpec.FontColor = System.Drawing.ColorTranslator.FromHtml(yAxisModel.Color);
mypane.YAxis.Title.FontSpec.Size = Global.FONT_SIZE;
mypane.YAxis.Title.FontSpec.Family = Global.FONT_FAMILY;
mypane.YAxis.Title.FontSpec.IsBold = true;
mypane.YAxis.Title.IsVisible = false; //隐藏Y轴标题显示 #region 刻度设置-小刻度 mypane.YAxis.MinorGrid.IsVisible = false; //隐藏小刻度网格线
mypane.YAxis.MinorTic.IsOpposite = false; //隐藏对面的刻度-小刻度
mypane.YAxis.MinorTic.IsInside = false; //隐藏内测刻度线-小刻度
mypane.YAxis.MinorTic.IsOutside = true; //显示外侧刻度线-小刻度
mypane.YAxis.MinorTic.IsCrossInside = false; //隐藏内测交叉刻度线-小刻度
mypane.YAxis.MinorTic.IsCrossOutside = false; //隐藏外侧交叉刻度线-小刻度 #endregion #region 刻度设置-主刻度 mypane.YAxis.MajorGrid.IsVisible = true; //显示主刻度网格线
mypane.YAxis.MajorGrid.IsZeroLine = false; //隐藏主刻度的0刻度线
mypane.YAxis.MajorTic.IsOpposite = false; //隐藏对面的刻度-主刻度
mypane.YAxis.MajorTic.IsInside = false; //隐藏内测刻度线-主刻度
mypane.YAxis.MajorTic.IsOutside = true; //显示外侧刻度线-主刻度
mypane.YAxis.MajorTic.IsCrossInside = false; //隐藏内测交叉刻度线-主刻度
mypane.YAxis.MajorTic.IsCrossOutside = false; //隐藏外侧交叉刻度线-主刻度 #endregion
return mypane;
}
设置新增Y轴的方法
public static GraphPane SetNewYAxisStyle(GraphPane myPane, YAxis yAxis, YAxisModel yAxisModel)
{
yAxis.Title.Text = yAxisModel.Title;
yAxis.Title.FontSpec.FontColor = System.Drawing.ColorTranslator.FromHtml(yAxisModel.Color);
yAxis.Scale.Min = yAxisModel.Min;
yAxis.Scale.Max = yAxisModel.Max;
yAxis.Scale.LabelGap = 0.2f;
yAxis.Scale.Align = AlignP.Outside;
yAxis.Scale.FontSpec.FontColor = System.Drawing.ColorTranslator.FromHtml(yAxisModel.Color);
yAxis.Scale.FontSpec.Size = Global.FONT_SIZE;
yAxis.Scale.FontSpec.FontColor = System.Drawing.ColorTranslator.FromHtml(yAxisModel.Color);
yAxis.Color = System.Drawing.ColorTranslator.FromHtml(yAxisModel.Color);
yAxis.Title.FontSpec.FontColor = System.Drawing.ColorTranslator.FromHtml(yAxisModel.Color);
yAxis.Title.FontSpec.Size = Global.FONT_SIZE;
yAxis.Title.FontSpec.Family = Global.FONT_FAMILY;
yAxis.Title.FontSpec.IsBold = true;
yAxis.Title.IsVisible = false; //隐藏Y轴标题
//yAxis.Type = AxisType.Text; //Y轴不能设置此属性,应该以刻度值显示
#region 刻度设置-小刻度 yAxis.MinorGrid.IsVisible = false; //隐藏小刻度网格线
yAxis.MinorTic.IsOpposite = false; //隐藏对面的刻度-小刻度
yAxis.MinorTic.IsInside = false; //隐藏内测刻度线-小刻度
yAxis.MinorTic.IsOutside = true; //显示外侧刻度线-小刻度
yAxis.MinorTic.IsCrossInside = false; //隐藏内测交叉刻度线-小刻度
yAxis.MinorTic.IsCrossOutside = false; //隐藏外侧交叉刻度线-小刻度 #endregion #region 刻度设置-主刻度 yAxis.MajorGrid.IsVisible = true; //显示主刻度网格线
yAxis.MajorGrid.IsZeroLine = false; //隐藏主刻度的0刻度线
yAxis.MajorTic.IsOpposite = false; //隐藏对面的刻度-主刻度
yAxis.MajorTic.IsInside = false; //隐藏内测刻度线-主刻度
yAxis.MajorTic.IsOutside = true; //显示外侧刻度线-主刻度
yAxis.MajorTic.IsCrossInside = false; //隐藏内测交叉刻度线-主刻度
yAxis.MajorTic.IsCrossOutside = false; //隐藏外侧交叉刻度线-主刻度 #endregion //添加到Y轴的list
myPane.YAxisList.Add(yAxis);
return myPane;
}
效果
Winform中设置ZedGraph多条Y轴时坐标轴左右显示设置的更多相关文章
- 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轴上下限、颜色、标题功能
场景 Winform中实现ZedGraph的多条Y轴(附源码下载): https://blog.csdn.net/BADAO_LIUMANG_QIZHI/article/details/1001322 ...
- Winform中设置ZedGraph鼠标悬浮显示举例最近曲线上的点的坐标值和X轴与Y轴的标题
场景 Winform中设置ZedGraph鼠标双击获取距离最近曲线上的点的坐标值: https://blog.csdn.net/BADAO_LIUMANG_QIZHI/article/details/ ...
- Winform中设置ZedGraph的曲线为散点图
场景 Winform中设置ZedGraph的曲线符号Symbol以及对应关系: https://blog.csdn.net/BADAO_LIUMANG_QIZHI/article/details/10 ...
- Winform中设置ZedGraph的曲线为折线、点折线、散点图
场景 Winform中设置ZedGraph的曲线为散点图: https://blog.csdn.net/BADAO_LIUMANG_QIZHI/article/details/102465399 在上 ...
- Winform中设置多条Y轴时新增的Y轴刻度不显示问题解决
场景 Winform中实现ZedGraph的多条Y轴(附源码下载): https://blog.csdn.net/BADAO_LIUMANG_QIZHI/article/details/1001322 ...
- Winform中设置ZedGraph的X轴与Y轴的刻度不在对面显示
场景 C#窗体应用中使用ZedGraph曲线插件绘制图表: https://blog.csdn.net/BADAO_LIUMANG_QIZHI/article/details/99716066 Win ...
- Winform中实现ZedGraph不显示y=0这条刻度线
场景 Winforn中设置ZedGraph曲线图的属性.坐标轴属性.刻度属性: https://blog.csdn.net/BADAO_LIUMANG_QIZHI/article/details/10 ...
随机推荐
- File 创建一个空目录,创建一个多级目录,删除一个目录
package seday03; import java.io.File; /** * 创建一个空目录,* @author xingsir*/public class MkDirDemo { publ ...
- Java之IO模型
首先来看一下同步与异步的概念: 1.同步是指当前端发起一次操作请求时,只有后台执行完所有的代码操作才会给前端返回值. 2.异步是将前端发回的消息加入消息队列,并且立刻给前端返回请求,告诉用户可以离开当 ...
- react 地图可视化 cesium 篇
Vue Function-based API RFC 一出来,感觉 vue 越来越像 react 了.新立项目,决定尝试下 react.js.下面是 react 集成 cesium,核心部分是 web ...
- Android8.1源码编译实践(Mac)
第0步:版本选择 AOSP版本选择很重要,如果选错了,会造成编译失败等各种问题,编译AOSP对Xcode的版本是有要求的: 比如:AOSP6.0-7.0,要求Xcode的版本是8.3,然而在MacOS ...
- Vue实战狗尾草博客管理平台第四章
本章主要内容如下: 填补上期的坑. iconfont仓库的关联,引入. 开发登录页面 填坑 上期中我们功能都已正常使用.但不知道有没有小伙伴测试过error页面,当访问地址不存在时,路由是否能正常挑战 ...
- python字符减运算
在C语言等高级语言中,字符之间的减运算都是支持的,但是python不然,在python中直接进行字符减运算是不被允许的. >>> print('c'-'a') Traceback ( ...
- appium---uiautomator定位方法
前面总结了7种定位方法,今天在介绍一种uiautomator方法,其实appium就是基于uiautomator框架实现的,让我们一起看下uiautomator有哪些定位方法可以使用 uiautoma ...
- 无依赖单文件http-ftp文件服务器(py2)
网上看到的东东,居然在很合适堡垒机上传下载文件的场景. 这个只能在python2版本上跑, 我更改了自定义端口. 下次再改写个py3版本的. #!/usr/bin/env python "& ...
- LeetCode 分治算法
分治算法:是将问题划分为一些独立的子问题,递归的求解个子问题,然后合并子问题的解而得到原问题的解. 分治算法步骤 step1 分解:将原问题分解为若干个规模较小,相互独立,与原问题形式相同的子问题: ...
- day64_10_8 vue的导入
一.简介 vue是一个渐进式的js框架.具体介绍查看官网: https://cn.vuejs.org 在vue框架中,有两个文件,当在开发阶段时使用完整版vue,因为有报错信息,而在上市阶段可以使用m ...