フィルターのクリア

How to use text fuction in labeling

3 ビュー (過去 30 日間)
Isa Duran
Isa Duran 2014 年 5 月 27 日
コメント済み: Adam 2014 年 5 月 28 日
Hi guys I have a small issue. I'm doing a subplot where each plot symbolize a direction (North,East,West,South) so I have created a subplot with 3 rows and 3 columns, with the middle one empty. Now I want to label North, West, East and South in my subplot. I have tried TEXT function but it seem to be unstable. I have attached the figure so you can see what I'm dealing with. Hope you can help guys.
for j=1:length(SR) %Number of fields
figure
for i=[1:4 6:9] %Creating row x collums for subplot
for c=1:8 %Number of headings
subplot(3,3,i)
plot(omega,Sp_we(:,c,j))
xlabel('\omega [rad/s]')
ylabel('S(\omega)')
end
end
suptitle(['Wave spectrum for area ', num2str(SR(j))])
%text(2,20,'hello','FontSize',18)
%text(1.5,1,'hello','FontSize',18)
%text(1.5,1,'hello','FontSize',18)
%text(1.5,1,'hello','FontSize',18)
end
  2 件のコメント
dpb
dpb 2014 年 5 月 27 日
I don't see anything about N, S, E, W???
What's the specific problem? text coordinates are axes-based for each axes; you need to specify the current figure on which you wish to write and the the position within that axes.
annotation objects work in global figure space if that's what you're looking for.
Isa Duran
Isa Duran 2014 年 5 月 27 日
Yeah I know ! thats the issue mann.. I want to write North at the second plot, and East at the plot nr. 5 in the left side an so on... If you know what I mean.. Like a compass

サインインしてコメントする。

回答 (1 件)

Adam
Adam 2014 年 5 月 27 日
編集済み: Adam 2014 年 5 月 27 日
Hi Isa, do you mean something like this? (just copy this code to the Matlab command line and press ENTER)
test_signal_N = randn(1,100);
test_signal_S = randn(1,100);
test_signal_E = randn(1,100);
test_signal_W = randn(1,100);
test_signal_NE = randn(1,100);
test_signal_NW = randn(1,100);
test_signal_SE = randn(1,100);
test_signal_SW = randn(1,100);
figure;
subplot(3,3,1); plot(test_signal_NW); xlabel('\omega [rad/s]'); ylabel('S(\omega)'); title('North-West');
subplot(3,3,2); plot(test_signal_N); xlabel('\omega [rad/s]'); ylabel('S(\omega)'); title('North');
subplot(3,3,3); plot(test_signal_NE); xlabel('\omega [rad/s]'); ylabel('S(\omega)'); title('North-East');
subplot(3,3,4); plot(test_signal_W); xlabel('\omega [rad/s]'); ylabel('S(\omega)'); title('West');
subplot(3,3,6); plot(test_signal_E); xlabel('\omega [rad/s]'); ylabel('S(\omega)'); title('East');
subplot(3,3,7); plot(test_signal_SW); xlabel('\omega [rad/s]'); ylabel('S(\omega)'); title('South-West');
subplot(3,3,8); plot(test_signal_S); xlabel('\omega [rad/s]'); ylabel('S(\omega)'); title('South');
subplot(3,3,9); plot(test_signal_SE); xlabel('\omega [rad/s]'); ylabel('S(\omega)'); title('South-East');
Adam
  4 件のコメント
Isa Duran
Isa Duran 2014 年 5 月 27 日
Okay :) But the script you sent me is also useful.. Do you know how to use text function? If you want the title to be at the bottom and in the left and right side?
thanks
Adam
Adam 2014 年 5 月 28 日
I have tried to figure out it... First solution is quite impractical, but it could work if you adjust it little bit -- mainly their absolut positions related to the size of figure. - see m-file attached
I´m sending you a second solution made by a GUI. Does it look like you imagine?
- see attached picture
Adam

サインインしてコメントする。

カテゴリ

Help Center および File ExchangeAxis Labels についてさらに検索

Community Treasure Hunt

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

Start Hunting!

Translated by