如何缩放点以获得更好的绘图

问题描述 投票:0回答:1

我需要在绘图上显示一些数据对。例如,我有这个带有测试数据的图:

这是我用来生成此图的代码:

  import matplotlib.pyplot as plt
  
  data_pairs = [
      (13, 24),
      (15, 32),
      (12, 45),
      (23, 40),
      (8, 23),
  ]
  
  y_coordinates = [5, 10, 15, 20, 25]
  
  plt.figure(figsize=(10, 5))
  
  for i, (x1, x2) in enumerate(data_pairs):
      y = y_coordinates[i]
      plt.scatter(x1,y, color='blue', marker='o', s=50)
      plt.scatter(x2,y, color='blue', marker='o', s=50)
      plt.plot([x1, x2], [y, y], color='red', linestyle='-', linewidth=2)
  
  plt.xlabel('X-Axis')
  plt.ylabel('Y-Axis')
  
  plt.grid(True)
  plt.show()

测试数据一切正常,但我使用的实际数据非常大。这是真实数据的部分:

       data_pairs = [
   (24193550, 24335121),
   (42850956, 42993424),
   (45606871, 45749886),
   (60595038, 60738084),
    (5026097, 5170030),
             ]

结果是如此混乱,以至于没有显示任何线条:

我该如何解决这个问题?

python matplotlib scale scatter-plot
1个回答
0
投票

确实没有办法“修复”情节。它显示了您的数据的准确表示。接下来的走向取决于你想通过这个情节传达什么信息。该图当前很好地显示了点对在 x 和 y 空间中如何相互关联。从中很难辨别的是每对点之间的相对距离。但由于数据的规模,即一对内每个点之间的距离与 x 轴上每对之间的距离相比非常小,因此无法在一个图中显示这两个方面。考虑制作多个不同的图,每个图都突出显示数据的特定方面。

© www.soinside.com 2019 - 2024. All rights reserved.