簡體   English   中英

如何在R中的曲線中找到兩點之間的整個距離?

[英]How to find whole distance between two points in a curved line in R?

我有一個類似的線圖使用R繪圖函數( plot(df)plot(df)

在此輸入圖像描述

我想獲得圖中兩點之間的整條線的距離(例如,在x(1)和x(3)之間)。 我怎樣才能做到這一點?

  1. 如果您的函數是通過精細的點網格定義的,則可以計算每對點之間的線段長度並添加它們。 畢達哥拉斯是你的朋友:

    繪制一個小段的弧長,弧段作為三角形的斜邊

    如果點不夠接近,使得函數在點之間基本上是線性的,則傾向於(通常僅略微)低估弧長。

    請注意,如果您的x值按遞增順序存儲,則可以通過差分直接獲得這些ẟx和ẟy值(在R中的diff

  2. 如果你有一個函數形式為yx的函數,你可以將積分弧長 -即整合

    ∫√[1+(dy / dx)²] dx

ab之間。 這基本上只是1中的計算達到極限。

  1. 如果xy是另一個變量的參數函數(T,說)可以簡化上面的積分參數形式(如果我們不要忘了雅可比),以整合

    ∫√[(dx / dt)²+(dy / dt)²] dt

    ab之間

    (注意直接平行於1.)

  2. 如果你在2.或3中沒有一個方便的集成功能形式,你可以使用數值求積法 ; 這可能非常有效(當衍生函數的評估成本很高時,這可能很方便)。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM