土曜日, 6月 29, 2019

Python: 指数分布のグラフを書く

Python の使いやすさはただごとじゃありません。

ユーザーの層が厚いのはユーザーが多いから。人気が人気を呼ぶパターンですね。ドキュメント類の豊富さ(本家じゃなくても)が質を変えているわけです。民主主義ですよこれは。

使いにくさなんてユーザーが変えていくもんです。多くの人たちが使っていればですね。意見を取り入れる柔軟さはピカイチです。もとからかなり特色ある言語ですが、ライブラリの豊富さでも群を抜いてます。

グラフを書くのもお手の物です。使い慣れた言語で思いのままってのは数式が近く感じられていいもんです。そのままシェルからグラフが書けます。

以下のスクリプトは指数分布を描きます。


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()


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()

Qt: 外部プログラムを起動する

  Qt/C++ のアプリは、外部へ直接アクセスできます。これはネットアプリでは不可能な Qt のメリットです。 外部プログラムを起動することもできます。QProcess::startDetached() を使うと独立したプロセスを立ち上げることができます。 この QProces...