2015-05-27 30 views
8

Belirli bir veri için pürüzsüz cspline eğrisi verilerinin nasıl çıkarılacağını bilen var mı? Örneğin, x ve y değerlerine karşılık gelen 2 sütun içeren bir veri dosyası vardır. Aşağıdaki komutlarıVeri dosyası olarak düzgün cspline eğrisi nasıl verilir

p 'data' w lp, "" smooth csplines 

Bir başka veri dosyası olarak pürüzsüz cpline eğrisini ayıklamak istiyorum tarafından pürüzsüz cpline eğrisi ile veri çizebilirsiniz.

cevap

11

Bu table ayarlayarak yapılabilir test etmek için harici bir dosyaya çizilen veri noktalarını yönlendirmek.

0 1 
1 2 
2 3 
3 2 
4 2 
5 4 
6 8 
7 5 
8 3 
9 1 

veri kendisi ve bunun gibi onun csplines interpolasyon görünüm: Aşağıdaki veri dosyası düşünün

set samples 100 
set table "table_100" 
plot "data" smooth csplines 
set samples 20 
set table "table_20" 
plot "data" smooth csplines 
unset table 
:

enter image description here

bir tablo birine interpolasyon yazdırmak için aşağıdakileri yapar

set samples, spline eğrisini oluşturmak için kullanılan noktaların sayısını belirler. Ve bunu görselleştirmek:

set key left 
plot "data" pt 7 t "Original data", \ 
    "table_100" w l t "Splines (100 samples)", \ 
    "table_20" w l t "Splines (20 samples)" 

enter image description here

4

Kullanım set table 'temp.dat'

set table 'temp.dat' 
plot 'myfile.dat' using 1:2 smooth cspline 
unset table 

o

plot 'myfile.dat' using 1:2 with points title 'original points',\ 
    'temp.dat' using 1:2 with lines title 'smoothed curve' 
+0

Kötü senkronizasyon :-D bu yayınlanmıştır zaman benim cevap yazıyordum. Seni yenmek imkansız! – Miguel

+0

@Miguel :) Üzgünüm, diğer cevaplayıcıların çoğunu dağıtmamak için biraz geri adım atmalıyım ... Güzel, cevabınıza bazı örnekler eklediniz. Yinelenen bir soru arıyordum, ama uygun birini bulamadım. Şimdi cevabınızı güzel referans olarak aldık. – Christoph

+0

Eh, en azından gnuplot etiketi ile bir cevap verme şansı var. Bir python sorusunu cevaplayan ilk kişi olmaya çalışın ... – Miguel