How to create a double scale of units in figures?
4 次查看(过去 30 天)
显示 更早的评论
Hi guys,
I try to explain well my goal: I have a figure with several curves that are in dimensionless units (both x and y values).
I want to also show the SI units (km) both for x and y axis, as depicted in red in the figure above (I voluntalry omitted the numbers but their order of magnitude is about 1e+8 km). To get the km unit is sufficient to multiply the dimensionless value for 1.5e+8.
Here is my code and the matlab file "database.mat" that stores the database containing the curves.
load database.mat
figure
% Family of 50 planar Lyapunov orbits around L1
for k1 = 1:(numel(files_L1_L2_Ly_prop))
plot([Ly_orb_filt(1).prop(k1).orbits.x],[Ly_orb_filt(1).prop(k1).orbits.y],...
"Color",my_green*1.1,'LineWidth',0.3); hold on
end
axis equal; grid on; box on;
% Plot L1 point
plot(L_points_data(1).x,L_points_data(1).y,'.',...
'color',[0,0,0],'MarkerFaceColor',my_green,'MarkerSize',10);
text(L_points_data(1).x-0.00015,L_points_data(1).y-0.0008,'L_{1}');
% Family of 50 planar Lyapunov orbits around L2
for k2 = 1:(numel(files_L1_L2_Ly_prop))
plot([Ly_orb_filt(2).prop(k2).orbits.x],[Ly_orb_filt(2).prop(k2).orbits.y],...
"Color",my_orange*1.1,'LineWidth',0.3); hold on
end
% Plot L2 point
plot(L_points_data(2).x,L_points_data(2).y,'.',...
'color',[0 0 0],'MarkerFaceColor',[0 0 0],'MarkerSize',10);
text(L_points_data(2).x-0.00015,L_points_data(2).y-0.0008,...
'$L_{2}$','Interpreter',"latex"); hold on
% Plot Earth + Moon system
plot(AstroData.mu_SEM_sys -1,0,'.',...
'color',my_blue,'MarkerFaceColor',my_blue,'MarkerSize',20);
text(AstroData.mu_SEM_sys-1.00238,0-0.001,'$Earth + Moon$','Interpreter',"latex");
xlabel('$x$','interpreter','latex','fontsize',12);
ylabel('$y$','interpreter','latex','FontSize',12);
0 个评论
回答(1 个)
DGM
2022-4-23
Since R2019b, you should be able to use a method similar to this example to create the secondary x and y axes:
You may need to manipulate the limits, and ticks of the new axes in order to get them to correspond appropriately to the primary axes.
另请参阅
类别
在 Help Center 和 File Exchange 中查找有关 Geographic Plots 的更多信息
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!