gnuplot: Trasare fișier cu linii, dar cu mai puține puncte (Programare, Plot, Gnuplot)

Abubakar Siddique a intrebat.

Doresc să plot un fișier cu linespoints în Gnuplot dar linia folosind toate eșantioanele de date și punctele folosind mai puține eșantioane de date. De exemplu, următorul fișier trasează datele, dar linia nu este vizibilă deloc.

set terminal png
set out "plot_sample.png"
plot [t=-1000:1000] t w linespoints pt 64 lt 10 ps 1.5

Cum se procedează dacă vreau să definesc un interval de eșantionare personalizat pentru puncte, dar să folosesc toate eșantioanele de date pentru linie? Aș putea face două diagrame separate în aceeași figură, dar atunci cheia le va afișa pe amândouă separat.

2 răspunsuri
Christoph

Utilizați pointinterval pentru a reduce numărul de puncte trasate, dar păstrați toate punctele pentru trasarea liniei:

set samples 100
plot x**2 w linespoints pointinterval 10

Comentarii

  • m-ai bătut m(_ _)m –  > Por Tom Solid.
  • @gnzlbg pointinterval este o opțiune specifică pentru linespoints. Pentru a trasa doar fiecare al zecelea punct, utilizați plot ... every 10 with points –  > Por Christoph.
  • Dar opțiunea every funcționează numai pentru punctele de date, nu? Ce se întâmplă dacă doriți să trasați o funcție cu puncte și să controlați densitatea punctelor? –  > Por Martin.
  • @Martin Asta face „set samples„ –  > Por Christoph.
Tom Solid
  • Utilizați every pentru a reduce eșantioanele luate din fișier!
  • Trasează linia șipunctele în două părți, și folosește notitle la una dintre ele!
  • Nu uitați să „sincronizați” culoarea celor 2 diagrame!

Ceva de genul:

plot [t=-1000:1000] 'data.dat' w l lt 10 lc 10 t 'something', '' every 10 w p pt 64 ps 1.5 lc 10 notitle

NOTĂ

Utilizare a every: plot ‘alma.dat’ every A:B:C:D:E:F

unde

  • A este creșterea datelor (la fiecare Ath)
  • B este creșterea blocului de date (blocurile de date sunt separate prin linii goale)
  • C/D este prima dată/bloc de date (începe de la C/D)
  • E/F este ultimul bloc de date/blocul de date (se termină la E/F).

Puteți utiliza toate caracteristicile descrise mai sus, dar dacă nu aveți nevoie, lăsați-le goale, de exemplu: …la fiecare 2 sau la fiecare 2::1 sau la fiecare 2::1:0 ect….