Disable font smoothing in colorbar object

3 次查看(过去 30 天)
Hi everyone,
I am trying to produce a figure with the FontSmoothing property disabled throughout. The figure has one axes object with a title, two axis labels, two plot()'ted lines, a legend, and a colorbar. My problem is that I can't find a way to turn off font smoothing for the colorbar tick labels. The colorbar object does have a Label property which in turn has a FontSmoothing property, but turning that off only affects the colorbar label (as the name would suggest). The tick labels remain unaffected.
I have read other answers showing how to turn off font smoothing for legend objects (basically, you have to use the 4-output-argument form of legend()), but I could not find a way to do something similar for colorbar().
This is what I have been able to accomplish so far: (I am using MATLAB R2019a for Linux)
The colorbar tick labels remain font-smoothed.
The colorbar tick labels ( -16.5 through -19.5 ) clearly have some sort font smoothing (font antialiasing) enabled. How can I disable that?

采纳的回答

Walter Roberson
Walter Roberson 2020-9-28
cb = colorbar(appropriate_axes);
cb.Ruler.FontSmoothing = 'off';
  3 个评论
Walter Roberson
Walter Roberson 2020-9-28
As a side question, why does the Ruler entry seem to be hidden from the user
I do not know; the decisions of Mathworks about what to expose and what not to expose are a mystery to me.
orderfields(struct(k(1))) %you will probably get a warning about the struct()
Vicky
Vicky 2020-9-28
Your messages were really enlightening, thanks a lot!

请先登录,再进行评论。

更多回答(1 个)

sushanth govinahallisathyanarayana
You can use gca to get a handle to the current axes, after that you can use the properties of the axes to set accordingly.

类别

Help CenterFile Exchange 中查找有关 Data Distribution Plots 的更多信息

产品


版本

R2019a

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by