matlab畫圖坐標軸標註問題,畫紅圈的地方應該怎麼畫?
01-08
舉個例子:
% 隨機生成一些xtick用於例子
n = 5;
xt = cumsum(rand(1,n)+0.5);
set(gca,"XTick",xt,"XLim",[xt(1) xt(end)+1],"XTickLabel",sprintfc("T_{%d}",1:n))
% 繪製你需要的部分
fs = 15;
ax = handle(gca);
fmt = "\raisebox{-5pt}{$\underbrace{\hspace{%.1fpt}}_{M_{%d}}$}";
set(ax,"Unit","Point","DefaultTextInterpreter","LaTeX","DefaultTextFontSize",fs)
len = 10/fs*diff(ax.XTick)/diff(xlim)*ax.Position(3);
arrayfun(@(x,l,k)text(x,0,sprintf(fmt,l,k)),...
ax.XTick(1:end-1),len,1:numel(len),"un",0)
% 輸出圖片
% set(gcf,"PaperPositionMode","auto");
% print -r300 -dpng output.png
下括弧是用Latex畫的,你百度找本資料都會講,不過圖片有點變形,你調一下!加油!
我能夠想到的就是用text語句來畫,利用latex語法
text(x,y,"$upperbrace$")
推薦閱讀:
※matlab遺傳演算法解決多約束的mtsp問題?
※用MATLAB如何找到軌跡圖中的拐點?
※matlab怎樣將有NaN的數據刪除整行?謝謝
※推崇Mathematica的那些人,理由是什麼?
※MATLAB 的符號計算原理是什麼,為什麼不能編譯為 C?
TAG:MATLAB |