场景

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轴时坐标轴左右显示设置的更多相关文章

  1. Winform中设置ZedGraph多条Y轴时与多条曲线一一对应

    场景 Winform中实现ZedGraph的多条Y轴(附源码下载): https://blog.csdn.net/BADAO_LIUMANG_QIZHI/article/details/1001322 ...

  2. Winforn中设置ZedGraph多条Y轴时曲线刻度不均匀问题解决

    场景 Winform中实现ZedGraph的多条Y轴(附源码下载): https://blog.csdn.net/BADAO_LIUMANG_QIZHI/article/details/1001322 ...

  3. Winform中实现ZedGraph新增自定义Y轴上下限、颜色、标题功能

    场景 Winform中实现ZedGraph的多条Y轴(附源码下载): https://blog.csdn.net/BADAO_LIUMANG_QIZHI/article/details/1001322 ...

  4. Winform中设置ZedGraph鼠标悬浮显示举例最近曲线上的点的坐标值和X轴与Y轴的标题

    场景 Winform中设置ZedGraph鼠标双击获取距离最近曲线上的点的坐标值: https://blog.csdn.net/BADAO_LIUMANG_QIZHI/article/details/ ...

  5. Winform中设置ZedGraph的曲线为散点图

    场景 Winform中设置ZedGraph的曲线符号Symbol以及对应关系: https://blog.csdn.net/BADAO_LIUMANG_QIZHI/article/details/10 ...

  6. Winform中设置ZedGraph的曲线为折线、点折线、散点图

    场景 Winform中设置ZedGraph的曲线为散点图: https://blog.csdn.net/BADAO_LIUMANG_QIZHI/article/details/102465399 在上 ...

  7. Winform中设置多条Y轴时新增的Y轴刻度不显示问题解决

    场景 Winform中实现ZedGraph的多条Y轴(附源码下载): https://blog.csdn.net/BADAO_LIUMANG_QIZHI/article/details/1001322 ...

  8. Winform中设置ZedGraph的X轴与Y轴的刻度不在对面显示

    场景 C#窗体应用中使用ZedGraph曲线插件绘制图表: https://blog.csdn.net/BADAO_LIUMANG_QIZHI/article/details/99716066 Win ...

  9. Winform中实现ZedGraph不显示y=0这条刻度线

    场景 Winforn中设置ZedGraph曲线图的属性.坐标轴属性.刻度属性: https://blog.csdn.net/BADAO_LIUMANG_QIZHI/article/details/10 ...

随机推荐

  1. vue-基本动画

    不使用动画 <div id="app"> <input type="button" value="toggle" @cli ...

  2. 备战双十一,腾讯WeTest有高招——小程序质量优化必读

    WeTest 导读 2018年双十一战场小程序购物通道表现不俗,已逐渐成为各大品牌方角逐的新战场.数据显示,截止目前95%的电商平台都已经上线了小程序.除了电商企业外,许多传统线下商家也开始重视小程序 ...

  3. 深入浅出js实现继承的7种方式

    给大家介绍7中js继承的方法 有些人认为JavaScript并不是真正的面向对象语言,在经典的面向对象语言中,您可能倾向于定义类对象,然后您可以简单地定义哪些类继承哪些类(参考C++ inherita ...

  4. Redis中使用redis-cli及密码登录

    使用redis-cli登录后如果Redis中设置了密码那么输入密码可能会出现: NOAUTH Authentication required的错. 这个时候可以输入:auth password 进行登 ...

  5. 登录界面storyboard的一种布局方法

    布局思想:三个大点的背景视图宽高相等间距一定(30),左右距父视图距离一定(50),则宽度确定,水平方向位置确定 竖直方向:高度与宽度成一定比例,上边距父视图距离一定,竖直方向的位置和大小也确定了.输 ...

  6. Java web实现原理

    说明 最近在看一本java web和tomcat技术介绍的书籍.故此,希望通过文字总结的方式总结自己学习所获,本篇主要介绍java实现web基本的信息浏览的方法原理. web的本质 由于技术能力有限, ...

  7. bayaim_linux_install_oracle_11g - 20181102

    -- 2018-11-2 15:12:12— baipingyang -- bayaim-- bayaim_linux_install_oracle_11g: -------------------- ...

  8. [Go] 利用有缓存channel控制同时并发的数量

    如果有一个大循环,里面每一个都开启groutine,那么瞬间就会开启非常多的groutine,要解决这个问题就要用channel的阻塞特性来解决 package main import "t ...

  9. C学习笔记(1)---数据类型,变量,储存类

    1.常用基本数据类型占用空间(64位机器为例): char : 1个字节 -- int :4个字节 -- float:4个字节 -- double:8个字节 2.书写类型: A.整数: a. 默认为1 ...

  10. 【转】认识JWT

    1. JSON Web Token是什么 JSON Web Token (JWT)是一个开放标准(RFC 7519),它定义了一种紧凑的.自包含的方式,用于作为JSON对象在各方之间安全地传输信息.该 ...