當我們在利用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 篇文章
如果覺得我的文章對您有用,請隨意打賞。你的支持將鼓勵我繼續創作!