Also i
enthält die Dateizeile f_i L_i
? Sie können dies tun, indem Sie eine Funktion aufrufen:
sumval=0 add(x)=(sumval=sumval+x) plot "file.dat" using 0:(add($1*exp(-0.001*(x-$2)**2)))
(hier werden die Abszissen in Form von Zeilennummer, Pseudo-Spalte angegeben $0
) Hier x
wird vorausgesetzt, dass sie vor dem Festlegen festgelegt sind, z x=...
. B. einen Befehl.
Aber ich schätze, was Sie wollten, ist x
das Ergebnis der Summation.
Dann müssten Sie eine große Anzahl dieser Summen machen und nur den letzten Punkt für jede Summe darstellen x
.
N_samples=100 # number of points to plot Xmin=0 Xmax=1. x(ix)=Xmin+(Xmax-Xmin+0.)*ix/N_samples stats "data.dat" N=STATS_records sumval=0 currec=0 finished(v)=(sumval=0,currec=0,v) #reinitialise the counters add(y)=(currec=currec+1,sumval=sumval+y,(currec==N)?finished(sumval):1/0) plot [Xmin:Xmax] for [ix=0:N_samples] "file.dat" using (x(ix)):(add($1*exp(-0.001*(x(ix)-$2)**2)))
Sie können Punkte nicht mit einer Linie verbinden, es sei denn, Sie leiten Ihre Zeichnung zuerst zu einer Tabelle um und plotten dann diese Tabelle.