我在我的c#項目中使用ZedGraph。如何在zedgraph中設置autosize字體
我的X軸有文本標籤(用於條形圖),但默認設置爲XAxis.Scale.IsPreventLabelOverlap = true
每隔一秒鐘標籤丟失。當我將其更改爲false
與XAxis.Scale.MajorStep = 1
時,會顯示每個標籤,但字體大小保持不變,並且標籤重疊。
有沒有辦法改變標籤的字體大小?或者最好將它切換到自動大小?
我在我的c#項目中使用ZedGraph。如何在zedgraph中設置autosize字體
我的X軸有文本標籤(用於條形圖),但默認設置爲XAxis.Scale.IsPreventLabelOverlap = true
每隔一秒鐘標籤丟失。當我將其更改爲false
與XAxis.Scale.MajorStep = 1
時,會顯示每個標籤,但字體大小保持不變,並且標籤重疊。
有沒有辦法改變標籤的字體大小?或者最好將它切換到自動大小?
很久以前我已經忘記了這個問題。 我發現我自己的解決方案,它不是那麼幹淨。我改寫了PaneBase.CalcScaleFactor()
方法,將return scaleFactor;
更改爲return scaleFactor * 0.75f;
。現在它的工作原理應該如此。
我不想讓你知道,但據我所知,你不能直接更改軸標籤字體大小。您可以更改軸標題字體大小,但不能更改標籤本身。你可以改變他們是否自動調整大小,然後按照他們自動調整的大小進行調整,看起來就像你想要的那樣,最終可以幫助你。 This是我正在尋找的資源。
將PaneBase.IsFontsScaled
屬性設置爲true,然後可以使用PaneBase.ScaleFactor()
方法更改比例因子。仔細看看我鏈接的資源,我認爲你將能夠完成。我沒有安裝ZedGraph,所以我無法測試它,但我確信它會是這樣的。
祝你好運!
我的解決方案是;
curve.Label.FontSpec = zg1.GraphPane.Legend.FontSpec.Clone();
curve.Label.FontSpec.Size = 6;
我忘了回答這個問題。使用ZedGraph的項目早已落後於我。我還沒有找到任何其他解決方法,而不是與'PaneBase.CalcScaleFactor()'方法搞亂(你可能在你的答案中改變了方法的名稱)。無論如何,加上你;) –