日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

Winform中设置ZedGraph多条Y轴时坐标轴左右显示设置

發布時間:2025/3/19 编程问答 26 豆豆
生活随笔 收集整理的這篇文章主要介紹了 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[0]); //循環剩下的Y軸 for (int i = 1; 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;????? //隱藏外側交叉刻度線-主刻度#endregionreturn 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軸的listmyPane.YAxisList.Add(yAxis);return myPane;}

效果

?

總結

以上是生活随笔為你收集整理的Winform中设置ZedGraph多条Y轴时坐标轴左右显示设置的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。