我想在散點圖上繪制一個 3 線圖以檢查線圖中的點有多少散點 我的散點圖如下獲得
import numpy as np
import matplotlib.pyplot as plt
import seaborn as sns
x = np.array([38420690,53439687,82878917,97448841])
y = np.array([47581627,12731149,3388697,911432])
plt.scatter(x,y)
plt.plot()
plt.show()
現在,我想在散點圖上繪制另外 3 個折線圖,這樣,
- 1 條線圖 @ x = y
- 第二條線圖@ x = 10*y
- 第三條線圖@ x = 10/y
預期輸出

請幫助我如何在 python 中執行此操作
uj5u.com熱心網友回復:
您可以使用 x 陣列的最小值和最大值創建一個 50 點的 linspace,然后對其應用操作:
import numpy as np
import matplotlib.pyplot as plt
import seaborn as sns
x = np.array([38420690,53439687,82878917,97448841])
y = np.array([47581627,12731149,3388697,911432])
min_x = min(x)
max_x = max(x)
newx = np.linspace(min_x, max_x, 50)
newy = newx
plt.figure(figsize=(12, 8))
plt.scatter(x,y, label='scatter')
plt.plot(newx, newy, color='red', label='x=y') # x=y
plt.plot(newx, newy*10, color='blue', label='x=10*y') # x -> 10*y'
plt.plot(newx, 10/newy, color='black',label='x=10/y') # x -> 10/y
plt.legend()
plt.show()
這導致:

uj5u.com熱心網友回復:
您描述的內容如下:
import numpy as np
import matplotlib.pyplot as plt
import seaborn as sns
x = np.array([38420690,53439687,82878917,97448841])
y = np.array([47581627,12731149,3388697,911432])
val = [0, 97448841*0.5, 97448841]
plt.scatter(x,y)
plt.plot(val, val, color='red')
plt.plot(val, [i*10 for i in val], color='blue')
plt.plot(val, [i*0.1 for i in val], color='black')
plt.plot()
plt.show()
但是您可能正在尋找具有相似斜率但交點不同的 3 條線,因此(更像是在圖中):
plt.plot(val, val, color='red')
plt.plot(val, [i 10000000 for i in val], color='blue')
plt.plot(val, [i-10000000 for i in val], color='black')
轉載請註明出處,本文鏈接:https://www.uj5u.com/ruanti/430609.html
標籤:Python matplotlib 阴谋 分散
