построение гладкой кривой в графах matplotlib
Я читаю файл netcdf с помощью python и должен построить графики с использованием библиотеки matplotlib в python .
файл netcdf содержит 3 переменные U V и W компонентов .
я должен нарисовать эти 3 компонента в вертикальном масштабе.
поскольку эти данные будут использоваться в прогнозировании погоды радар .
мне нужно построить эти графики с плавными кривыми за углом .
теперь сюжет выглядит и код...
from netCDF4 import Dataset
from pylab import *
import numpy
from scipy import interpolate
from scipy.interpolate import spline
#passing the filename
root_grp=Dataset('C:Python27MyProgramsnnt206rwpuvw.nc')
#getting values of u component
temp1 = root_grp.variables['ucomponent']
data1 = temp1[:]
u=data1[0]
#getting values of v component
temp2 = root_grp.variables['wcomponent']
data2 = temp2[:]
v=data2[0]
#getting values of w component
temp3 = root_grp.variables['wcomponent']
data3 = temp3[:]
w=data3[0]
#creating a new array
array=0.15*numpy.arange(1,55).reshape(1,54)
#aliasing
y=array[0]
#sub-plots
f, (ax1, ax2, ax3) = plt.subplots(1,3, sharey=True)
ax1.plot(u,y,'r')
ax2.plot(v,y,'g')
ax3.plot(w,y,'b')
#texts
ax1.set_title('u component',fontsize=16,color='r')
ax2.set_title('v component',fontsize=16,color='g')
ax3.set_title('w component',fontsize=16,color='b')
show()
1 ответов
простым решением является интерполяция со сплайнами, как объясняется в хороший учебник Scipy.
вот пример: