【发布时间】:2022-02-14 17:18:10
【问题描述】:
我在 Python 中创建了一个包含三条曲线的图表,我希望每条曲线的颜色都不同。如何在每条曲线上放置不同的颜色?例如绿色、蓝色和红色,而不是所有三个上的红色。
以下是 Python 代码:
import matplotlib.pyplot as plt
import math
a = 9.8 # Acceleration due to gravity, m/s^2
theta = []
v = 50.0
m = 10.0
c = 1.29
vt = (m * 9.8) / c # terminal velocity #151.93
time = []
horizontal_range = []
vertical_range = []
for th in range(0,60,15):
for t in range(0, 50):
var = (-a * t) / vt
z = (vt / 9.8) * (v * 0.866 + vt) * (1.0 - (2.718 ** var)) - vt * t
x = ((1.0 - math.exp(var)) * (v * vt * math.cos(th))) / a
horizontal_range.append(x)
vertical_range.append(z)
time.append(t)
theta.append(th)
plt.plot(horizontal_range, vertical_range, color='red')
plt.xlabel('x')
plt.ylabel('z')
plt.ylim(0)
plt.xlim(0)
plt.title('Projectile')
plt.show()
【问题讨论】:
-
不要使用奇怪的
2.718 ** var,而是尝试使用math.exp(var)。此外,如果您想进行大量计算,并在速度和易于编写的公式方面取胜,您真的应该查看numpy。 -
感谢您的帮助
标签: python matplotlib