Hướng dẫn how do you plot a 2d vector in python? - làm thế nào để bạn vẽ một vector 2d trong python?

Hướng dẫn how do you plot a 2d vector in python? - làm thế nào để bạn vẽ một vector 2d trong python?

Các vectơ cực kỳ quan trọng trong đại số tuyến tính và hơn thế nữa. Một trong những biểu diễn trực quan phổ biến nhất của một vectơ là mũi tên. Ở đây chúng tôi sẽ học cách vẽ các vectơ với matplotlib. Hình ảnh tiêu đề cho thấy hai vectơ và tổng của chúng. Bước đầu tiên, chúng tôi sẽ vẽ các vectơ có nguồn gốc từ 0, được hiển thị bên dưới.

Hướng dẫn how do you plot a 2d vector in python? - làm thế nào để bạn vẽ một vector 2d trong python?

import matplotlib.pyplot as plt
import numpy as np

vectors = np.array(([2, 0], [3, 2]))
vector_addition = vectors[0] + vectors[1]
vectors = np.append(vectors, vector_addition[None,:], axis=0)

tail = [0, 0]
fig, ax = plt.subplots(1)
ax.quiver(*tail,
           vectors[:, 0],
           vectors[:, 1],
           scale=1,
           scale_units='xy',
           angles = 'xy',
           color=['g', 'r', 'k'])

ax.set_xlim((-1, vectors[:,0].max()+1))
ax.set_ylim((-1, vectors[:,1].max()+1))

Chúng tôi có hai vectơ được lưu trữ trong mảng vectors của chúng tôi. Đó là [2, 0][3, 2]. Cả theo thứ tự của [x, y] như bạn có thể thấy từ hình ảnh. Chúng ta có thể thực hiện bổ sung vectơ giữa hai bằng cách thêm vectors[0] + vectors[1]. Sau đó, chúng tôi sử dụng np.append vì vậy chúng tôi có cả ba vectơ trong cùng một mảng. Bây giờ chúng tôi xác định nguồn gốc trong tail, bởi vì chúng tôi sẽ muốn đuôi của mũi tên được đặt tại [0, 0]. Sau đó, chúng tôi tạo ra hình và trục để vẽ với plt.subplots(). Bản thân âm mưu có thể được thực hiện với một cuộc gọi đến phương thức

ax.quiver(vectors[1::-1,0],
          vectors[1::-1,1],
          vectors[:2,0],
          vectors[:2,1],
          scale=1,
          scale_units='xy',
          angles = 'xy',
          color=['g', 'r'])
0. Nhưng đó là một cuộc gọi, với rất nhiều thông số, vì vậy hãy để Lôi đi qua nó.

Đầu tiên, chúng ta cần xác định nguồn gốc, vì vậy chúng ta vượt qua

ax.quiver(vectors[1::-1,0],
          vectors[1::-1,1],
          vectors[:2,0],
          vectors[:2,1],
          scale=1,
          scale_units='xy',
          angles = 'xy',
          color=['g', 'r'])
1. Tại sao dấu hoa thị?
ax.quiver(vectors[1::-1,0],
          vectors[1::-1,1],
          vectors[:2,0],
          vectors[:2,1],
          scale=1,
          scale_units='xy',
          angles = 'xy',
          color=['g', 'r'])
0 thực sự có hai tham số cho nguồn gốc, X và Y. Dấu hoa thị khiến [0, 0] được giải nén vào hai tham số đó. Tiếp theo, chúng tôi vượt qua tọa độ X (
ax.quiver(vectors[1::-1,0],
          vectors[1::-1,1],
          vectors[:2,0],
          vectors[:2,1],
          scale=1,
          scale_units='xy',
          angles = 'xy',
          color=['g', 'r'])
3) và sau đó là tọa độ y (
ax.quiver(vectors[1::-1,0],
          vectors[1::-1,1],
          vectors[:2,0],
          vectors[:2,1],
          scale=1,
          scale_units='xy',
          angles = 'xy',
          color=['g', 'r'])
4) của các vectơ của chúng tôi. Ba tham số tiếp theo
ax.quiver(vectors[1::-1,0],
          vectors[1::-1,1],
          vectors[:2,0],
          vectors[:2,1],
          scale=1,
          scale_units='xy',
          angles = 'xy',
          color=['g', 'r'])
5,
ax.quiver(vectors[1::-1,0],
          vectors[1::-1,1],
          vectors[:2,0],
          vectors[:2,1],
          scale=1,
          scale_units='xy',
          angles = 'xy',
          color=['g', 'r'])
6 và
ax.quiver(vectors[1::-1,0],
          vectors[1::-1,1],
          vectors[:2,0],
          vectors[:2,1],
          scale=1,
          scale_units='xy',
          angles = 'xy',
          color=['g', 'r'])
7 là cần thiết để làm cho độ dài mũi tên khớp với các số thực. Theo mặc định, các mũi tên được chia tỷ lệ, dựa trên mức trung bình của tất cả các vectơ được vẽ. Chúng tôi thoát khỏi loại quy mô đó. Hãy thử loại bỏ một số trong số đó để có được một ý tưởng tốt hơn về ý tôi. Cuối cùng, chúng tôi vượt qua ba màu, một cho mỗi mũi tên.

Vì vậy, những gì chúng ta cần để vẽ đầu vào các vectơ thẳng hàng như trong hình ảnh tiêu đề? Chúng ta chỉ cần vượt qua các vectơ nơi nguồn gốc là vectơ khác.

ax.quiver(vectors[1::-1,0],
          vectors[1::-1,1],
          vectors[:2,0],
          vectors[:2,1],
          scale=1,
          scale_units='xy',
          angles = 'xy',
          color=['g', 'r'])

Điều này rất đơn giản vì nó là phương pháp run tương tự nhưng nó phức tạp vì cú pháp lập chỉ mục. Bây giờ, chúng tôi không còn giải nén

ax.quiver(vectors[1::-1,0],
          vectors[1::-1,1],
          vectors[:2,0],
          vectors[:2,1],
          scale=1,
          scale_units='xy',
          angles = 'xy',
          color=['g', 'r'])
1. Thay vào đó chúng tôi vượt qua nguồn gốc x và y riêng biệt. Trong
ax.quiver(vectors[1::-1,0],
          vectors[1::-1,1],
          vectors[:2,0],
          vectors[:2,1],
          scale=1,
          scale_units='xy',
          angles = 'xy',
          color=['g', 'r'])
9 0 có được tọa độ x. -1 đảo ngược mảng. Nếu chúng ta không đảo ngược, mỗi vectơ sẽ là nguồn gốc của riêng nó. 1 bỏ qua vectơ đầu tiên, là vectơ tổng hợp vì chúng tôi đảo ngược. vectors0 cung cấp cho chúng tôi các điều phối y. Cuối cùng, chúng ta chỉ cần bỏ qua vectơ tổng hợp khi chúng ta vượt qua cường độ x và y. Phần còn lại là như nhau.

À chính nó đấy. Thật không may,

ax.quiver(vectors[1::-1,0],
          vectors[1::-1,1],
          vectors[:2,0],
          vectors[:2,1],
          scale=1,
          scale_units='xy',
          angles = 'xy',
          color=['g', 'r'])
0 chỉ hoạt động cho các vectơ 2D. Nó cũng được thực hiện cụ thể để trình bày các vectơ có nguồn gốc chung. Trường hợp sử dụng chính của nó là để vẽ các trường vector. Đây là lý do tại sao một số âm mưu ở đây cảm thấy cồng kềnh. Ngoài ra còn có vectors2 đơn giản hơn nhưng chỉ tạo một mũi tên cho mỗi cuộc gọi phương thức. Tôi hy vọng bài viết này là hữu ích cho bạn. Hãy cho tôi biết nếu bạn có những cách khác để vẽ các vectơ.

2D âm mưu trong Python là gì?

2D Plolting¶ Trong Python, matplotlib là gói quan trọng nhất để tạo ra một cốt truyện, bạn có thể có một cái nhìn của bộ sưu tập matplotlib và hiểu được những gì có thể được thực hiện ở đó. Thông thường, điều đầu tiên chúng ta cần làm để tạo ra một lô là nhập gói matplotlib.

Làm thế nào để tạo một vector trong Python?

Bây giờ chúng ta hãy hiểu việc tạo ra một vector trong Python. Mô -đun Python Numpy được sử dụng để tạo một vectơ. Chúng tôi sử dụng phương thức numpy.Array () để tạo một mảng một chiều, tức là một vectơ.

Làm thế nào để thêm hai vectơ và vẽ chúng vào cùng một con số?

Sau đó, để thêm bất kỳ hai vectơ nào và vẽ chúng vào cùng một hình, hãy làm như vậy trước khi bạn gọi plt.show (). Một cái gì đó như: plt.quiver (*gốc, v [:, 0], v [:, 1], color = ['r', 'b', 'g'], tỷ lệ = 21) v12 = v [0] + V [1] # Thêm các vectơ 1ST (màu đỏ) và thứ 2 (màu xanh) plt.quiver (*gốc, v12 [0], v12 [1]) plt.show ()

Hàm âm mưu cơ bản trong Python là gì?

Hàm âm mưu cơ bản là cốt truyện (x, y).Hàm cốt truyện có trong hai danh sách/mảng, X và Y và tạo ra một màn hình trực quan về các điểm tương ứng trong X và Y.

Bạn có thể vẽ một mảng 2D trong Python không?

Sử dụng phương thức Scatter () để vẽ mảng 2D numpy, tức là dữ liệu.Để hiển thị hình, sử dụng phương thức show ()., i.e., data. To display the figure, use show() method.

Chức năng nào được sử dụng để vẽ vector python?

Trong bài viết này, chúng tôi sẽ thảo luận về cách vẽ một trường vector trong Python.Để thực hiện nhiệm vụ này, chúng tôi sẽ sử dụng phương thức run () và phương thức streamplot () trong mô -đun matplotlib.Trong đó x, y xác định vị trí vectơ và u, v là các mũi tên định hướng đối với vị trí vectơ.quiver() method and the streamplot() method in matplotlib module. Where X, Y define the Vector location and U, V are directional arrows with respect of the Vector location.

Matplotlib có phải là thư viện âm mưu 2D không?

Matplotlib là một thư viện âm mưu 2D Python tạo ra các số liệu chất lượng xuất bản trong nhiều định dạng hardcopy và môi trường tương tác trên các nền tảng. which produces publication quality figures in a variety of hardcopy formats and interactive environments across platforms.