Думаю, можно создать более точную модель (и следовательно более плавную), если использовать большее количество исходных точек. Условие - они должны быть исходными, а не синтетическими (т.е. полученными уже в процессе интерполяции). Иначе ничего такого не выйдет.