Matplotlib'de quiver grafiği nasıl oluşturulur (örneklerle)


Titreşim grafiği , X ve Y tarafından belirtilen Kartezyen koordinatlarda U ve V yön bileşenlerine sahip okları görüntüleyen bir grafik türüdür.

Aşağıdaki sözdizimini kullanan quiver() işlevini kullanarak Matplotlib’de kolayca bir titreme grafiği oluşturabiliriz:

titreme (x, y, u, v)

Altın:

  • x: ok konumlarının x koordinatları
  • y: ok konumlarının y koordinatları
  • u: Ok vektörlerinin x bileşenleri
  • v: Ok vektörlerinin y bileşenleri

Bu eğitimde bu işlevin pratik kullanımına ilişkin çeşitli örnekler verilmektedir.

Örnek 1: Tek okla ok kılıfı çizimi

Aşağıdaki kod, tek bir okla titreme grafiğinin nasıl görüntüleneceğini gösterir:

 import matplotlib. pyplot as plt

#define plots
fig, ax = plt. subplots ()

#define coordinates and directions
x = 0
y = 0
u = 15
v = 3

#create quiver plot
ax. quiver (x, y, u, v)

#display quiver plot
plt. show ()

Matplotlib'deki titreme grafiği

Örnek 2: iki oklu ok kılıfı düzeni

Aşağıdaki kod, iki okla bir titreme grafiğinin nasıl görüntüleneceğini gösterir:

 import matplotlib. pyplot as plt

#define plots
fig, ax = plt. subplots ()

#define coordinates and directions
x = [0, 0]
y = [0, 0]
u = [0, 1]
v = [-2, 0]
#create quiver plot
ax. quiver (x, y, u, v, scale = 10 )

#display quiver plot
plt. show () 

İki oklu Python sadağı

Ölçek bağımsız değişkeninin okları daha uzun olacak şekilde ölçeklendirdiğini ve böylece onların çizimde daha kolay görülebileceğini unutmayın.

Örnek 3: örgü ızgaralı sadak grafiği

Aşağıdaki kod, örgü ızgarası kullanılarak bir titreme grafiğinin nasıl görüntüleneceğini gösterir:

 import matplotlib. pyplot as plt
import numpy as np

#define plots
fig, ax = plt. subplots ()

#define coordinates and directions
x,y = np. meshgrid (np. arange (-2, 2, .1), np. arange (-2, 2, .1))
z = x*np. exp (-x**2 - y**2)
v, u = np. gradient (z, .1, .1)

#create quiver plot
ax. quiver (x, y, u, v)

#display quiver plot
plt. show () 

Matplotlib titremesi

Quiver() işlevinin tam belgelerini burada bulabilirsiniz.

Yorum ekle

E-posta hesabınız yayımlanmayacak. Gerekli alanlar * ile işaretlenmişlerdir