以下情节显示了我的问题:

我想在1e-1和1e-2之间添加一条线.所以我想(1e-1 + 1e-2)/ 2.
但对于不是"中途"的对数标度.
在这种情况下,如何计算这些或任意两点之间的"视觉"中间值?使用的代码是
clc; clear all;
y = logspace(-3,0,100);
x = y;
semilogx(y,x);
hold on
plot([1e-1 1e-1],get(gca,'YLim'),'k--');
plot([1e-2 1e-2],get(gca,'YLim'),'k--');
midway = (1e-1+1e-2)/2;
plot([midway midway],get(gca,'YLim'),'k--');
Run Code Online (Sandbox Code Playgroud)
谢谢
a=1e-2
b=1e-1
midway = exp((log(a)+log(b))/2)
Run Code Online (Sandbox Code Playgroud)
记录日志以获取对数刻度的位置,然后进行数学计算.
你可以简化那个公式,你最终会得到一个几何平均值:
midway=sqrt(a*b)
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
842 次 |
| 最近记录: |