2015-06-18 19 views
4

後續圖顯示我的問題:兩點之間的視覺中途在x軸數標尺

enter image description here

我想補充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--'); 

感謝

+4

我投票作爲題外話,因爲它屬於以關閉這個問題[** math.se **] (http://math.stackexchange.com/)或[** dsp.se **](http://dsp.stackexchange.com/)。 – thewaywewalk

+3

幾何意思應該做你想做的。 –

+0

我不認爲這個問題應該關閉。這可能像我一樣使用數學來解答,但Luis Mendo在評論中提供了簡單的編程答案。 – Daniel

回答

7
a=1e-2 
b=1e-1 
midway = exp((log(a)+log(b))/2) 

採取日誌來獲得對數刻度的位置,然後做數學題。

你可以簡化公式,你會最終有一個幾何平均值:

midway=sqrt(a*b) 
+0

夥計,傳說。謝謝。我正在用logspace()嘗試各種各樣的東西()哈哈... –

+0

@SteveHatcher實際上,'logspace(-1,-2,3)'會在中間給出所需的值 –