私はmatplotlib 2.1をバージョン2.0.2からインストールしました。私の単純な2D x-yプロットは、スケールが線形になる前にログスケールでy軸を表示しています。どのように起こっているのか分かりません。Matplotlib 2.1のログスケールの問題
import matplotlib
import matplotlib.pyplot as plt
import numpy as np
from scipy.optimize import curve_fit
import matplotlib.gridspec as gridspec
from numpy import sqrt, pi, exp, linspace, loadtxt
from lmfit import Model
path=r'C:\users\test.mca'
f=open(path,'r')
lines=f.readlines()[14:2060]
x=[]
for i in range(0,2046):
x.append(i)
plt.figure(figsize=(10,6))
plt.xlim(0,600)
plt.ylim(0,1000)
plt.grid(True)
plt.xlabel('Channels')
plt.ylabel('Counts')
def gaussian(x, amp, cen, wid):
"1-d gaussian: gaussian(x, amp, cen, wid)"
return (amp/(sqrt(2*pi)*wid)) * exp(-(x-cen)**2 /(2*wid**2))
gmod = Model(gaussian)
pars = gmod.make_params(amp=15000, wid=14, cen=380)
result = gmod.fit(lines, pars, x=x)
print(result.fit_report())
fwhm=result.params['wid'].value*2.35
ER=100*fwhm/result.params['cen'].value
center=result.params['cen']
plt.title('Gaussian fit\n Center=%.1f FWHM=%.1f ER=%.1f%%' % (center, fwhm, ER))
plt.plot(x, lines,'bo', markersize=4)
plt.plot(x, result.best_fit, 'r-')
plt.show()
バージョン2.1:
バージョン2.0.2:
上面図は2.1を使用してプロットされ、下の図は、2.0.2を使用しています。なぜこれが理解されているいくつかの問題を抱えている。
私はこれを(明らかに)認識しませんでした。お手伝いありがとう。 – Sebekemsaf