2016-08-14 55 views
-4

如果我要画的y = X^2 0图表至9日在MATLAB,我可以做什么是最简单的Python代码绘制简单的图表(比MATLAB简单)

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代码更简单(我的意思是更短)吗?

编辑:我知道它处理时间并不重要也没有意义,但我只是很好奇代码能变得多短。

+2

IMO,简单的代码可能不一定意味着更短的代码....在你的情况下,如果python代码比matlab更长,我不会感到惊讶,matlab是专门为这个函数而不是python。 –

+0

您的代码更长的唯一真正原因是您必须导入库。您只需为每个要绘制的文件执行一次此操作。担心这种线路没有多大用处。除此之外,你的代码比matlab长一行。 (除此之外,计数线不是测量简单性的好方法,尤其是像这样的简单例子。) – BrenBarn

+0

是的,我理解你的意思并完全同意。我添加到问题:) –

回答

1

这是一个有点简单

import matplotlib.pyplot as plt 

X = range(10) 
plt.plot(X, [x*x for x in X]) 
plt.show() 

但请记住,Python是一种通用的语言,所以这并不奇怪它需要比一个特定的制图/数学工具多一点。

然而,主要的混乱是导入图表,帮助图表绘图和数值计算,因为这是暗示为matlab,因为它是一个工具,只是围绕它设计的。

然而,这些线条只需要一次:它们不是一个因子,而只是一个加法常数,即使在稍微严重的例子中也是微不足道的。

+0

是啊,我完全明白。我只是好奇它能得到多少时间。 –