ユーザーの層が厚いのはユーザーが多いから。人気が人気を呼ぶパターンですね。ドキュメント類の豊富さ(本家じゃなくても)が質を変えているわけです。民主主義ですよこれは。
使いにくさなんてユーザーが変えていくもんです。多くの人たちが使っていればですね。意見を取り入れる柔軟さはピカイチです。もとからかなり特色ある言語ですが、ライブラリの豊富さでも群を抜いてます。
グラフを書くのもお手の物です。使い慣れた言語で思いのままってのは数式が近く感じられていいもんです。そのままシェルからグラフが書けます。
以下のスクリプトは指数分布を描きます。
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
import matplotlib.pyplot as plt | |
import math | |
import numpy as np | |
a=np.arange(0,4,.01) | |
x= np.linspace(0,10,100) | |
l=[] | |
for i in range(1,5): | |
y= i*np.exp(-i*a) | |
plt.plot(a,y) | |
l.append("n = "+str(i)) | |
plt.legend(l) | |
plt.xlabel("x") | |
plt.ylabel("f(x)=n*e^(-n*x)") | |
plt.title("Exponential Distribution PDF") | |
plt.show() |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
import matplotlib.pyplot as plt | |
import math | |
import numpy as np | |
a=np.arange(0,6,.01) | |
x= np.linspace(0,10,100) | |
l=[] | |
for i in range(1,5): | |
z= 1-np.exp(-i*a) | |
plt.plot(a,z) | |
l.append("n = "+str(i)) | |
plt.legend(tuple(l)) | |
plt.xlabel("x") | |
plt.ylabel("F(x)=1-e^(-n*x)") | |
plt.title("Exponential Distribution CDF") | |
plt.show() |