我在我的c#项目中使用ZedGraph。
我的X轴有文字标签(用于条形图),但默认设置为XAxis.Scale.IsPreventLabelOverlap = true
,缺少每秒标签。当我使用false
将其更改为XAxis.Scale.MajorStep = 1
时,会显示每个标签,但字体大小保持不变,且标签重叠。
有没有办法改变标签的字体大小?或者最好将其切换为自动调整大小?
答案 0 :(得分:1)
我不想让你知道但据我所知你不能直接改变轴标签的字体大小。您可以更改轴标题字体大小,但不能更改标签本身。您可以更改它们是否自动调整大小以及它们自动调整大小,这似乎是您想要的,这可能最终会帮助您。 This是我正在寻找的资源。
将PaneBase.IsFontsScaled
属性设置为true,然后您可以使用PaneBase.ScaleFactor()
方法更改比例因子。浏览我链接的资源,我认为你将能够完成它。我没有安装ZedGraph所以我无法测试它,但我相信它会是那样的。
答案 1 :(得分:1)
我的解决方案是;
curve.Label.FontSpec = zg1.GraphPane.Legend.FontSpec.Clone();
curve.Label.FontSpec.Size = 6;
答案 2 :(得分:0)
很久以前我已经忘记了这个问题。
我找到了自己的解决方案,但不是那么干净。我通过将PaneBase.CalcScaleFactor()
更改为return scaleFactor;
之类的内容重写了return scaleFactor * 0.75f;
方法。现在它可以正常工作。