当我们在利用matlab作图时,有时发现图形顶用text函数建造的文本字体太小和坐标轴文字字体太小,我们需要改变这些文本和字体的大小和粗细怎么办?比来特意研究了一下,下面给大师分享一下我解决改变text文本和坐标轴字体的大小和粗细的方式和步调,但愿可以或许帮忙到大师。
第一步:首先我们需要好作图的原料和法式,如下图所示,我们利用matlab读取需要用于作图的数据,并进行行清算,我这里写的是matlab对一维数据进行K-means聚类离散化的法式。
代码如下:
clc;
clear;
yw_data=xlsread('一维数据样本75.xlsx'); %读入一维数据样本到yw_data矩阵
xx=yw_data;
clus=3;
[idx,c]=kmeans(xx,clus);
[n,m]=size(xx);
cc1=[];
cc2=[];
cc3=[];
for i=1:n
if idx(i)==1
cc1=[cc1;xx(i)];
elseif idx(i)==2
cc2=[cc2;xx(i)];
elseif idx(i)==3
cc3=[cc3;xx(i)];
end
end
disp('第一类鸿沟')
[min(cc1),max(cc1)]
disp('第二类鸿沟')
[min(cc2),max(cc2)]
disp('第三类鸿沟')
[min(cc3),max(cc3)]
disp('三类中间')
c
第二步:作图,对matlab一维数据进行K-means聚类离散化后的成果作图显示,如下图所示。
作图代码如下:
h1=plot(xx,'w');grid on;hold on;
for i=1:n
if idx(i)==1
text(i,xx(i),num2str(idx(i)),'color',[1 0 0]);
elseif idx(i)==2
text(i,xx(i),num2str(idx(i)),'color',[0 1 0]);
elseif idx(i)==3
text(i,xx(i),num2str(idx(i)),'color',[0 0 1]);
end
end
ylabel('发电煤耗g/(kw.h)')
xlabel('样本序列')
第三步:我们来看看作图成果,如下图所示,可以发现发现图形顶用text函数建造的文本字体太小和坐标轴文字字体太小,我们需要改变这些文本和字体的大小和粗细。
第四步:我们首先来改变text文本的字体大小和粗细,我们改变text函数即可。
改变后的text函数代码如下:
for i=1:n
if idx(i)==1
text(i,xx(i),num2str(idx(i)),'FontSize',18,'color',[1 0 0]);
elseif idx(i)==2
text(i,xx(i),num2str(idx(i)),'FontSize',18,'color',[0 1 0]);
elseif idx(i)==3
text(i,xx(i),num2str(idx(i)),'FontSize',18,'color',[0 0 1]);
end
end
第五步:此时再看看作图结果,如下图所示,可以发现图形中的text文本字体变年夜后加粗了。
第六步:下面我们来改变坐标轴的字体大小和粗细,我们在法式的后面添加改变坐标轴的字体大小和粗细的代码:
set(gca,'FontSize',20)
即可,然后运行法式。
第七步:然后我们再看看运行结果,如下图所示,可以发现坐标轴的字体大小变粗可加年夜了。
第八步:别的我们还可以直接在图形中进行点窜,不需要写法式,如下图所示,我们点击【编纂】,然后点击下拉菜单中的【图形属性】。
第九步:进入编纂【图形属性】界面,如下图所示,在这里我们可以点窜text文本字体和坐标轴字体的大小和粗细,还可以更改其他图形属性,好比坐标轴规模和坐标轴名称等。
0 篇文章
如果觉得我的文章对您有用,请随意打赏。你的支持将鼓励我继续创作!