How can you prevent axis labels from having uneven spacing from the axis

6 次查看(过去 30 天)
I have some simple test code to plot an array and label the Y-axis:
x = randi(10,40); % random matrix
ax1 = axes;
imagesc(x) % plot matrix as image
labels = {'Some - M','Thing - M', 'A - M', 'ABC - M'}; % some random test labels for Y-axis
set(ax1,'YTickLabel',labels,'YTick',1:2:40,'FontSize',8); % setting up Y-axis ticks and labels
I then save the image using [file>export setup>fonts] and I untick custom size and tick custom name and select Helvetica as the font; I then save it as a vector graphic file (.svg).
The problem: The Y-axis labels having uneven gaps from the Y-axis, as you can see in the image below, they don't line up with the red line.
I think it is something to do with using a non-monospaced font, as when I use a monospaced font such as Courier, the axis labels line up perfectly:
Is there a way to get the labels to line up perfectly when using a non-monospaced font such as Helvetica?
If not, are there any monospaced fonts in MATLAB that look similar to Helvetica?

回答(1 个)

Mario Malic
Mario Malic 2023-10-1
Sometimes you have to let things be imperfect. Also, put down that magnifier in the drawer.
  5 个评论
Image Analyst
Image Analyst 2023-10-1
Honestly, it's barely noticeable to me, and probably your other viewers, especially when it's shown with a normal size on a normal monitor. Personally I wouldn't worry about it.
Geith
Geith 2023-10-1
I know it seems petty but on my actual code it is definitely more noticable, I just gave this simple code as an easy example to demonstrate the problem without 100 lines of code.
Here is a small section of how it looks on my actual work - it's not terrible but defintely more noticable:
Anyways, I guess I will have to ignore it since there doesn't seem to be a solution anyways, apart from using a monospaced font. I was just asking to see if there was perhaps another solution.

请先登录,再进行评论。

类别

Help CenterFile Exchange 中查找有关 Graphics Object Programming 的更多信息

产品


版本

R2022a

Community Treasure Hunt

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

Start Hunting!

Translated by