Jak wykreślić sin (x) + sin (y) = 1 w gnuplot?

1

Próbuję wykreślić funkcję parametryczną sin(x) + sin(y) = 1, ale jeszcze jej nie mam. Oto mój skrypt:

set parametric

set urange [-10:10]
set vrange [-10:10]
set sample 2000
set size ratio -1
set grid front
unset border

splot sin(u) + sin(v) = 1

Ale pojawia się błąd: line 10: parametric function not fully specified. Co powinienem zrobić? Chcę wykreślić swoją funkcję tak, jak robi to Desmos, w kartezjańskim układzie współrzędnych:

wprowadź opis zdjęcia tutaj

Z góry dziękuję za sugestie.

Gregor Perčič
źródło
Podczas używania set parametricmusisz dać plotparę i splotjako trojaczkę. Jako przykład plot x, ylub splot x, y, znie jestem do końca pewien, czy twoje wykreślanie równania jest prawidłowe, ale w zasadzie mówisz splot xi ignorujesz y i z, i dlatego daje ci ten błąd. Jak zrobić to, czego chcesz? Nie jestem do końca pewien.
DrZoo
Ahhh, dziękuję za wskazówkę! W tym przypadku tylko zlekceważyłem y, ponieważ nie potrzebuję z(knuję w przestrzeni 2D). Więc na pewno użyję ploti nie splot.
Gregor Perčič

Odpowiedzi:

2

sin(x) + sin(y) = 1nie jest równaniem parametrycznym, ale równaniem niejawnym . Albo musisz wykonać matematykę i znaleźć odpowiednie równanie parametryczne, albo uciekać się do „sztuczki”, której prawdopodobnie użyłeś w Desmos: gnuplot może wykreślić izoliny funkcji, abyś mógł wykreślić izolinę 1 z f(x,y)=sin(x) + sin(y).

set cntrparam levels discrete 1
set contour
set view map
unset surface
set isosample 100
splot sin(x)+sin(y)
Joce
źródło