我试图绘制一组数据,但我希望y轴以科学符号显示,而不带比例因子。我用了“ax = gca;ax. Y轴指数= 1;然而,这随后在y轴的顶部结合了比例因子。如何在没有比例因子的情况下用科学计数法绘图?我添加了一个示例照片,只是为了帮助澄清我的意思。代码如下。谢谢
close all; clear; clc;
v(1) = 0;
y(1) = 120;
g = 9.80665;
T = 5.044;
dt=10^-3;
t = 0:dt:T;
k = 0.5*1e-5*0.82*0.5;
m = 250;
for ii = 2:length(t)
f= k*v(ii-1).^2 - m*g;
v(ii) = v(ii-1) + (f/m)*dt;
y(ii) = y(ii-1) + v(ii)*dt;
if y(ii) < 0 && y(ii-1) > 0
Timpact = t(ii);
end
end
D=@(g,t) 120+(.5*-g).*(t.^2);
D1=D(g,t);
Net=m*g-k*v.^2;
F1=m*g;
F2=k*v.^2;
F3=-F2+F1;
A=Net/m;
Quality=1-(A/g);
figure
plot (t,Quality);
title ('Relative Microgravity Quality')
xlabel('Time [s]')
ylabel('Relative Microgravity Quality')
hold on
grid on
我想要的示例:
ax = gca; ax.int count = 1;
上面将y轴转换为科学记数法,但随后加入了x10^1的比例因子。如果我将指数设置为0,它将消除比例因子,但也不是科学计数法。
1条答案
按热度按时间lymnna711#
您只需要编辑刻度标签格式
或者等效地使用
ytickformat
函数:有关格式化字符串的更多细节,请参阅文档,它们与其他字符串格式化函数(如
fprintf
)的约定相同。在这种情况下,
%.2e
是2个小数位的指数表示法。