Disable font smoothing in colorbar object
1 次查看(过去 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 ( -16.5 through -19.5 ) clearly have some sort font smoothing (font antialiasing) enabled. How can I disable that?
0 个评论
采纳的回答
Walter Roberson
2020-9-28
cb = colorbar(appropriate_axes);
cb.Ruler.FontSmoothing = 'off';
3 个评论
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()
更多回答(1 个)
sushanth govinahallisathyanarayana
2020-9-28
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.
1 个评论
另请参阅
类别
在 Help Center 和 File Exchange 中查找有关 Title 的更多信息
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!