如何使用相互关联的距离绘制点?

时间:2015-11-19 10:39:38

标签: python dictionary plot

我有点词典:

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

我想在不使用绝对值的情况下绘制它们,即使用字典中的值。我可以画出来,但我不明白,如何用Python做到这一点。

***有超过3分,比如300,我刚刚添加了这本词典,以展示我所掌握的信息。

****我的观点(3个中的每一个)可能不满足或可能满足三角不等式定理

更新

它的外观如何,给定点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

更新2

射线: 雷A:

enter image description here

Ray B:

enter image description here

Ray C:

enter image description here

光线E,D,F也一样。然后我需要以某种方式验证/修改它们。这就是我不懂的如何用Python做的事情。虽然绝对可以画画。

1 个答案:

答案 0 :(得分:0)

我相信你需要做的是:

  • 生成一个字典,将每个点的点,距离配对。即

Dict_comp [A] = set((B,1.3),(C,9.5),(D,20.3))等......

  • 强制点A位于原点(0,0)
  • 选择要绘制的第一个点的方向。例如,我将B绘制在(1.3,0)。
  • 绘制前2个点后,根据它们与前2个点的关系确定每个其他点的坐标。
    • 字典存在,每个点与其他点的距离已知,您将查找Dict_comp [C]并检查与现有点的距离以获取该信息。

This example from matplotlib will help you with polar coordinates - 您将从两个现有点中获得r,然后您可以找出theta。鉴于此信息,我不会使用两个以上的现有点来定位第三个点。