簡體   English   中英

如何使用 matplotlib 繪制數組中的特定點?

[英]How to plot specific points in array with matplotlib?

我生成了兩個具有 10 個不同值的數組。 如何使用 matplotlib 在每個數組中繪制 3 個特定值? 到目前為止,這是我的代碼:

import numpy as np
import matplotlib as plt
x = np.array(1,2,3,4,5,6,7,8,9,10)
y = np.array(1,2,3,4,5,6,7,8,9,10)

我只想繪制 x 數組的 3,4,5 點及其對應的 y 值。 我試過這個:

plt.plot(x[2,3,4], y[2,3,4])
plt.show()

但是我收到錯誤“數組的索引太多”。 但是,如果我寫

plt.plot(x[2], y[2])
plt.show()

將繪制數組中的第二個元素。

問題是x[3, 4, 5]的語法。 您想要做的是x[3]x[4]x[5] ,它們是數組的各個元素。

print(x[3], x[4], x[5]) # print 4, 5, 6

一種更舒適的方法是:

plt.plot(x[2:5], y[2:5])
plt.show()

其中x[2:5]從第三個元素返回到第五個元素。

正如Tony Tannous所說,數組的創建也是錯誤的。 np.array需要一個列表!

然后你還必須改變 x 和 y 的創建:

x = np.array([1,2,3,4,5,6,7,8,9,10])
y = np.array([1,2,3,4,5,6,7,8,9,10])

添加[]使其成為列表。

當然你應該看到索引的文檔

暫無
暫無

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

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