2016-09-09 78 views
0

Python新手,試圖完成我認爲最簡單的任務:繪製基本的2D矢量。然而,我的在線搜索讓我無處可去,所以我轉向了第一個問題的stackoverflow。繪製簡單的2D矢量

我只想繪製一個2D矢量,我們稱它爲my_vector。 my_vector從(0,0)到(3,11)。

我所做的是這樣的:

from __future__ import print_function 
import numpy as np 
import pylab as pl 
%pylab inline 

x_cords = np.arange(4) 
y_cords = np.linspace(0, 11, 4) 
my_vector = vstack([x_cords, y_cords]) 
fig = plt.figure() 
ax = fig.add_subplot(111) 
ax.plot(my_vector) 
plt.show() 

這給下面的圖片(而且完全不是我後):

a very wrong plot

但是我發現,

ax.plot(x_cords, y_cords) 

而不是

ax.plot(my_vector) 

給我的情節,我正在尋找,但後來我沒有那個單一的矢量我後。

那麼如何正確繪製一個基本的2D矢量?謝謝你,對不起,如果這確實已經貼別的地方...

+1

你試過'hstack'你的x和y座標? – Andrew

+0

是的,但不是基本上只是連接x和y座標? – keli

+0

它確實如此,但'vstack'也是如此,我只是想知道數組的形狀是否會影響它。 – Andrew

回答

0

您也可以解開你的二維矢量

pl.plot(*my_vector) 

這是有效地只是做

pl.plot(x_cords, y_cords) 
+0

他們是否也可以用兩點((0,3)和(0,11))做一個線圖? – Andrew

+0

謝謝@CoryKramer! – keli

+0

一個後續問題:如何在使用'*'繪圖時操縱線條的樣式或顏色? – keli