ฉันจะพล็อตต่อไปนี้ 3 ฟังก์ชั่น (เช่นsin
, cos
และนอกจากนี้) บนโดเมนt
ในร่างเดียวกันได้หรือไม่
from numpy import *
import math
import matplotlib.pyplot as plt
t = linspace(0, 2*math.pi, 400)
a = sin(t)
b = cos(t)
c = a + b
ฉันจะพล็อตต่อไปนี้ 3 ฟังก์ชั่น (เช่นsin
, cos
และนอกจากนี้) บนโดเมนt
ในร่างเดียวกันได้หรือไม่
from numpy import *
import math
import matplotlib.pyplot as plt
t = linspace(0, 2*math.pi, 400)
a = sin(t)
b = cos(t)
c = a + b
คำตอบ:
ในการพล็อตกราฟหลาย ๆ กราฟในรูปเดียวกันคุณจะต้องทำ:
from numpy import *
import math
import matplotlib.pyplot as plt
t = linspace(0, 2*math.pi, 400)
a = sin(t)
b = cos(t)
c = a + b
plt.plot(t, a, 'r') # plotting t, a separately
plt.plot(t, b, 'b') # plotting t, b separately
plt.plot(t, c, 'g') # plotting t, c separately
plt.show()
plt.show()
ดังนั้นการพล็อตอีกครั้งจะไม่ลงจุดบนกราฟเดียวกัน
บางทีอาจเป็นวิธีที่ยิ่งใหญ่กว่าในการทำเช่นนั้น
from numpy import *
import math
import matplotlib.pyplot as plt
t = linspace(0,2*math.pi,400)
a = sin(t)
b = cos(t)
c = a + b
plt.plot(t, a, t, b, t, c)
plt.show()
plt.plot()
plt.plot(t, a, 'b', t, b, 'g', t, c, 'y')
คุณสามารถระบุสีตามสีที่ระบุในลิงค์นี้: matplotlib.org/users/colors.html
ion()
pyplot ในเรื่องนี้ได้ใช่ไหมแทนที่จะพล็อตทุกอย่างในบรรทัดเดียว?
ion()
ขออภัยผมไม่ทราบเกินไป ยกตัวอย่างให้ดูได้ไหม?
เพียงใช้ฟังก์ชันplot
ดังนี้
figure()
...
plot(t, a)
plot(t, b)
plot(t, c)