2015-11-19 28 views
1

我點的詞典:如何使用相關距離繪製點?

dictDistances = {A:{B:1.23, C:3.56}, B:{A:1.23, C:2.38}, C:{A:3.56, B:2.38}} 

而且我想繪製它們不使用絕對值,即,使用從字典中的值。我可以畫出來,但我不明白,如何在Python中做到這一點。

***有300多點,比我多了3分,我剛剛添加了這本字典,以演示我擁有的信息種類。

****我的點(每個3)可以不或可滿足三角不等式定理

UPDATE

什麼這將是什麼樣子,給定的點A,B,C,d, E,F和從X系列的一些距離:它們之間的Y:

enter image description here

在提供你所看到的將所有距離的圖像,即:

AB AC AD AF AE 
BA BC BD BF BE 
CB CA CD CF CE 
DB DC DA DF DE 
EB EC ED EF EA 
FB FC FD FA FE 

UPDATE 2

射線: 雷答:

enter image description here

雷B:

enter image description here

雷C:

enter image description here

對於射線E,D,F也是如此。然後我需要以某種方式驗證/修改它們。這是我不明白如何在Python中完成的。儘管這是絕對可能的。

+0

我很困惑你想如何繪製它們。和這種格式。你打算做一個散點圖,每個點都是2個值的組合嗎?什麼決定哪個值在X軸上繪製,哪些在Y軸上繪製?這些值本身是在字典,這是無序的... ... – mauve

+0

好吧,非常喜歡畫一個點A,那麼我知道B是1.23和C是3.56從A.這樣一個方式,我可以畫他們在一條線。但是,當我得到B和C之間的距離爲2.38時,AB和AC不再位於同一條線上。字典有什麼問題? –

+0

你有沒有你想要它的樣子的例子? – mauve

回答

0

我相信你需要做的是:

  • 產生的字典,對了點,每個點的距離。即

Dict_comp [A] =設定((B,1.3),(C,9.5),(d,20.3))等...

  • 力點A爲原點(0,0)
  • 爲要繪製的第一個點選擇一個方向。例如,我會在(1.3,0)處繪製B圖。
  • 一旦你擁有了那些最初的2所繪製的點,確定基於其第一2.
    • 與從已知的其他各點的距離現有的字典中關係對彼此的點的座標,你會擡頭Dict_comp [C]並檢查現有點的距離以獲取該信息。

This example from matplotlib will help you with polar coordinates - 你必須從每一個現有的兩個點r,則可以計算出THETA。鑑於此信息,我不會使用兩個以上的現有點來定位第三個點。