Borghi Diagram in MATLAB

9 次查看(过去 30 天)
Rahman
Rahman 2021-10-14
评论: Rahman 2021-10-14
Hello, I'm trying to replicate the borghi diagram as follow in MATLAB (with all the annotations shown in the figure below). Is there any easier way to do this? Appreciate your help in advance.

采纳的回答

Kevin Holly
Kevin Holly 2021-10-14
This is how I would do it. First plot the lines and change the scales to log.
%Plot lines
plot([10 1 .1 10^4],[.1 1 10 10^2.5],'k')
hold on
plot([10^4 1 10^4],[1 1 10],'k')
%Make scale log
set(gca,'xScale','log')
set(gca,'yScale','log')
Then in the figure menu, Insert>Line or Insert>TextBox. You can get rid of edgecolor around box by editing it in the property inspector (Edit>Axes Properties... then select text box)
After you are satisfied with figure, File>Generate Code...
% Create ylabel
ylabel('υ_n^''/S_L','Rotation',0);
% Create xlabel
xlabel({'l/l_F'});
% Create textbox
annotation(gcf,'textbox',...
[0.54742857142857 0.238095238095239 0.238285714285714 0.0547619047619052],...
'String',{'wrinkled flamelets'},...
'FitBoxToText','off',...
'EdgeColor','none');
% Create textbox
annotation(gcf,'textbox',...
[0.175 0.192857142857143 0.135714285714284 0.121428571428576],...
'String',{'laminar','flames'},...
'HorizontalAlignment','center',...
'FitBoxToText','off',...
'EdgeColor','none');
% Create textbox
annotation(gcf,'textbox',...
[0.531357142857142 0.330952380952382 0.290071428571429 0.0547619047619051],...
'String','corrugated flamelets',...
'FitBoxToText','off',...
'EdgeColor','none');
% Create textbox
annotation(gcf,'textbox',...
[0.236714285714284 0.440476190476192 0.104357142857144 0.0547619047619051],...
'String','Re = 1',...
'FitBoxToText','off',...
'EdgeColor','none');
% Create line
annotation(gcf,'line',[0.802176339285714 0.816462053571429],...
[0.484071806500378 0.458881330309902]);
% Create line
annotation(gcf,'line',[0.375 0.351785714285714],...
[0.615666666666667 0.647619047619048]);
% Create line
annotation(gcf,'line',[0.733928571428571 0.708928571428571],...
[0.75852380952381 0.790476190476191]);
% Create textbox
annotation(gcf,'textbox',...
[0.786714285714283 0.411904761904765 0.104357142857144 0.0547619047619051],...
'String','Ka = 1',...
'FitBoxToText','off',...
'EdgeColor','none');
% Create textbox
annotation(gcf,'textbox',...
[0.367857142857142 0.742857142857145 0.178571428571427 0.150000000000004],...
'String',['broken',sprintf('\n'),'reaction',sprintf('\n'),'zones'],...
'HorizontalAlignment','center',...
'FitBoxToText','off',...
'EdgeColor','none');
% Create textbox
annotation(gcf,'textbox',...
[0.652785714285711 0.797619047619053 0.125785714285717 0.0547619047619051],...
'String','Ka_δ = 1',...
'FitBoxToText','off',...
'EdgeColor','none');
% Create textbox
annotation(gcf,'textbox',...
[0.49742857142857 0.569047619047622 0.238285714285714 0.054761904761905],...
'String',{'thin reaction zones'},...
'FitBoxToText','off',...
'EdgeColor','none');
% Create textbox
annotation(gcf,'textbox',...
[0.295642857142855 0.659523809523816 0.104357142857144 0.054761904761905],...
'String','η = l_δ',...
'FitBoxToText','off',...
'EdgeColor','none');
% Create textbox
annotation(gcf,'textbox',...
[0.692071428571426 0.380952380952388 0.104357142857144 0.0547619047619051],...
'String','η = l_F',...
'FitBoxToText','off',...
'EdgeColor','none');
% Create line
annotation(gcf,'line',[0.698214285714285 0.714285714285714],...
[0.458523809523811 0.433333333333335]);
% Create line
annotation(gcf,'line',[0.208984375 0.241127232142857],...
[0.429083144368859 0.449130763416478]);
  3 个评论
Kevin Holly
Kevin Holly 2021-10-14
编辑:Kevin Holly 2021-10-14
For point:
scatter(254.5,12.4,'filled','k')
To change the text font on the plot:
  1. Edit>Axes Properties...
  2. Select the textbox in the figure
  3. Change properties in the Property Inspector (e.g. font,size,rotation,string)
  4. File>Generate Code...
You can find out what commands would change the text font from the generated code.
Rahman
Rahman 2021-10-14
Thank you very much Mr. Kevin for your help & time.

请先登录,再进行评论。

更多回答(1 个)

Image Analyst
Image Analyst 2021-10-14
You can use xlabel(), ylabel(), plot(), and text(). And annotation() or line() for the little lines.

类别

Help CenterFile Exchange 中查找有关 Annotations 的更多信息

产品


版本

R2017a

Community Treasure Hunt

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

Start Hunting!

Translated by