如果我想在matlab中从0到9绘制y = x ^ 2图形,我可以做
a = [0:1:10]
b = a.^2
plot(a,b)
使用python,我可以像下面那样做
import matplotlib.pyplot as plt
import numpy as np
a=[x for x in xrange(10)]
b=np.square(a)
plt.plot(a,b)
plt.show()
但与我相信python代码更简单相反,这需要更多的matlab线条。 (我猜python试图让事情变得很轻,所以我们需要在实际需要时导入东西,因此需要更多行...)我可以使python代码更简单(我的意思是更短)吗?
编辑:我知道在处理时间方面并不重要且没有意义,但我只是好奇,代码有多短。答案 0 :(得分:5)
这有点简单
import matplotlib.pyplot as plt
X = range(10)
plt.plot(X, [x*x for x in X])
plt.show()
但请记住,Python是一种通用语言,因此它需要的不仅仅是特定的图表/数学工具,这并不奇怪。
主要的混乱是导入有助于图表绘制和数值计算的库,因为这是matlab(围绕它设计的工具)所暗示的。
然而,这些线只需要一次:它们不是一个因素,而只是一个加性常数,即使只是稍微更严重的例子也可以忽略不计。