我如何更改我的图形中的文本的字体大小?

8126次浏览(过去30天)
爱德华。
爱德华。 2014年5月26日
评论道: 图像分析 2021年4月16日
我在一个函数中使用“set(gca,'fontsize', 18);”来改变图形中的字体。我的代码没有抛出错误,但它也没有改变字体大小。我可以通过UI手动更改字体,但这是一个缓慢的过程。我在RHEL6.5上运行MATLAB 2013a
我也尝试过“set(gca,'FontSize', 18);”并在title, xlabel, ylabel和legend中指定'FontSize', 18。这些都没有奏效。
请建议!
10评论
亚历克斯Hruksa
亚历克斯Hruksa 8月28日
这段代码非常有用,谢谢图像分析师!

登录评论。

接受的答案

图像分析
图像分析 2014年5月27日
通常您可以在更新文本时单独设置每个控件的字体大小,例如
标题(“这是我的地块”“字形大小”、24);
包含(“x轴”“字形大小”、24);
文本(x, y,“嘿,看看这个”“字形大小”、24);
这样做有什么不对吗?这就是我的工作。
5个评论
彼得
彼得 2016年9月27日
好吧,可能这个字体没有其他尺寸的可用

登录评论。

更多的答案(9)

嘉里蒂迈克
嘉里蒂迈克 2016年2月10日
是的,这可能会令人困惑。以下是你可能看到的:
数字%创建一个数字
集(gca),“字形大小”, 18)%创建一个轴,并设置其字体大小为18
情节(x, y)重置坐标轴并绘制到其中
注意“重置坐标轴”部分。这里发生的一件事是FontSize属性被设置为默认!
当保持时不会发生因为轴不会重置。
有几种方法可以解决这个问题。
最简单的方法是在绘图后设置FontSize。
更复杂的方法是更改默认值:
图(“DefaultAxesFontSize”, 18)
情节(x, y)
这有意义吗?
1评论
里克
里克 2017年2月9日
关键是字体大小属性继承自图形。所以你应该调用gcf而不是gca。但实际上,最佳实践是在创建图形窗口时设置字体大小。

登录评论。


何塞·克雷斯波巴里奥斯
集(findall (gcf,“属性”,“字形大小”),“字形大小”,18)
5个评论
图像分析
图像分析 2021年4月16日
@Mauricio Iwanaga 我不太清楚你对" 微不足道的 ,但text()函数也有一个'FontSize'选项:
文本(x, y, str,“字形大小”, 18岁,“FontWeight”“大胆”);
看起来很琐碎 对我来说 要使用它,只要你知道输入选项是可用的。

登录评论。


肖恩·德Wolski
肖恩·德Wolski 2014年5月27日
我认为你要做的是设置 “默认” 坐标轴的字体大小
集(gca),“DefaultTextFontSize”, 18)
这个轴上的任何文本对象都有18种字体
文本(0.5,0.5,“你好”
4评论
DN7
DN7 2020年12月18日
如果 gca 不适合您,请确保您没有意外地创建以这种方式命名的变量。使用:
clearvarsgca
甘氨胆酸h_gca =;
h_gca.FontSize = 13;
以确保。我在运行时无意中创建了这个变量(struct) gca。字形大小= 13 ,它不会改变当前轴的字体大小,而是创建一个新的结构。

登录评论。


丹尼尔
丹尼尔 2015年3月26日
考虑到我花了几个小时调查这件事,我只是想发表一下意见。
我在Ubuntu 12.04LTS上运行Matlab 2013b。与这里的许多类似,更改标签/图例属性可以正常工作,但设置轴ticklabel字体名称/大小不工作——至少,轴属性列表反映了更改,但窗口图没有呈现到新的字体设置。在打印情节到eps和包括这在我的乳胶编译文件,它原来轴字体属性正在改变。这似乎只是一个渲染错误。
安装额外的字体并不适合我——我也没有预料到,因为渲染/更改其他对象的字体属性,如标签和图例,在Matlab中工作得很好。
所以,对于那些为出版物的外观而烦恼的人,在我看来,实际输出的数字确实反映了编辑(至少这是我在印刷到。eps时的经验)。
欢呼,
丹尼尔

雷纳托坎帕纳
雷纳托坎帕纳 2017年11月18日
我使用Matlab 2016。你可以尝试两种方法:
1)图(DefaultAxesFontSize, 30);%这里的字体大小是30。图(1)情节(x, y,“线宽”,4);%注意这里的线宽是4 xlabel('length bar','FontSize',18);%注意这里的字体大小标签是18 ylabel(' width bar','FontSize',18);%注意这里的字体大小标签是18
并且必须在每个图中使用dame命令图('DefaultAxesFontSize',30)。如果你没有在每个标签中指定字体大小,标签会以“30”显示字体大小
或者你可以试试:
2) figure (1) plot(x,y,'LineWidth',4);集(gca、字形大小,28);%请,注意字体大小是在plot命令之后:)

阿奴
阿奴 2015年1月1日
我也遇到过同样的问题。我使用的是Linux Mint操作系统。我通过安装xfont 100和75 dpi和truetype字体解决了这个问题。试一次。

维姆·库马尔chawda
图(4)
集(gca),“字形大小”, 50)
情节(A_OBS (2) .RxTime (:) / 3600, No_ele2 (1: r2, 1),“。b”);
持有
情节(A_OBS (4) .RxTime (:) / 3600, No_ele4 -0.05 (1: r4, 1),“.g”);
包含('时间[h],字体大小15');
ylabel (“可见卫星数量,字体15”);
标题(“Javad和u-blox接收器(伽利略)的比较”);
传奇(“Javad (SN: 0082)”“u-blox (SN: 1771)”);
为什么它不起作用?
我需要最大的比例和文本在轴比例。


Eitvydas Karauskas
Eitvydas Karauskas 2021年4月4日
嘿,伙计们,我在文本功能上有一个不同的问题。为什么我的文字大小改变时,我放大或缩小我的图形?我需要将文本设置为固定大小,这样当我放大或缩小时它就不会改变。我在添加我的代码。
谢谢你的帮助;)
定义纬度和经度
latlim = (53.9 - 55.5);
lonlim = 26 [24];
%装载世界地图
地图= worldmap (latlim lonlim);
%装载立陶宛边界从外部来源和显示它作为一个
% geografic坐标
国家= shaperead (“gadm36_LTU_0.shp”“usegeocoords”,真的,的边界框(“大小), (lonlim, latlim]);
geoshow(地图、国家“facecolor”(1 1 1),“线宽”2);
将坐标转换为纬度/经度
%定义VNO
VNOlon = 25.293639;
VNOlat = 54.636056;
geoshow (VNOlat VNOlon,“标记”“。”“markerfacecolor”“蓝”“markeredgecolor”“蓝”“markersize”6);
textm (VNOlat VNOlon,“VNO”“fontweight”“大胆”“颜色”“黑”“字形大小”6);
将km转换为nn并定义半径
R = [9.26 18.52 27.78];
circlem (VNOlat VNOlon r“线型”“——”“线宽”, 0.5);
%定义从VNO的半径
textm (54.65831449445, 25.14947845266,“5 nm VNO”“旋转”, 70,“字形大小”3,“fontunits”“归一化”);

社区寻宝

在MATLAB中心找到宝藏,并发现社区如何可以帮助你!

开始狩猎!