2012-01-11 10 views
7

Czy mogę rysować i radzić sobie z niejawnymi funkcjami w Mathematica?Praca z ukrytymi funkcjami w Mathematica

na przykład: -

x^3 + y^3 = 6xy

mogę wykreślić funkcję takiego?

+4

dlaczego ktoś edytować, aby dodać "z" nie w ogóle w oryginalnym pytanie lub żadnej z odpowiedzi? – agentp

+0

To nie jest funkcja, to * równanie * w trzech współrzędnych kartezjańskich * x *, * y * i * z *. Lewą stronę równania można jednak uznać za "regułę" dla mapy (funkcji) z \ R^3 do \ R. Równanie daje wtedy określony zestaw poziomów tego pola skalarnego (mapa, funkcja), który jest dwuwymiarową powierzchnią w przestrzeni. –

Odpowiedz

19
ContourPlot[x^3 + y^3 == 6*x*y, {x, -2.7, 5.7}, {y, -7.5, 5}] 

Dwie uwagi:

  1. Uwaga podwójne znak równości i tym symbole mnożenia.
  2. Dokładne dane wejściowe można znaleźć za pośrednictwem interfejsu WolframAlpha. Ten interfejs jest bardziej wyrozumiały i akceptuje twoje dane wejściowe prawie dokładnie - chociaż musiałem określić, że chciałbym jakiegoś rodzaju działki.

enter image description here

+5

+1 za miłe korzystanie z Wolframa | Alpha. –

+1

dziękuję człowieku .. ale nie miałem na myśli tylko kreślenia .. Chcę sobie z tym poradzić .. jak różnicowanie i rzeczy .. czy mogę jednoznacznie rozróżnić to równanie? –

16

Tak, używając ContourPlot.

I to nawet możliwe, aby wykreślić tekst x^3 + y^3 = 6xy wzdłuż własnej krzywej, zastępując Line prymitywny z kilkoma Text prymitywów:

ContourPlot[x^3 + y^3 == 6 x y, {x, -4, 4}, {y, -4, 4}, 
Background -> Black, PlotPoints -> 7, MaxRecursion -> 1, ImageSize -> 500] /. 
{ 
Line[s_] :> 
Map[ 
    Text[Style["x^3+y^3 = 6xy", 16, Hue[RandomReal[]]], #, {0, 0}, {1, 1}] &, 
    s] 
} 

Mathematica graphics

Albo można animować równanie wzdłuż krzywej, tak:

res = Table[ Normal[ 
ContourPlot[x^3 + y^3 == 6 x y, {x, -4, 4}, {y, -4, 4}, 
    Background -> Black, 
    ImageSize -> 600]] /. 
{Line[s_] :> {Line[s], 
    Text[Style["x^3+y^3 = 6xy", 16, Red], s[[k]], {0, 0}, 
    s[[k + 1]] - s[[k]]]}}, 
    {k, 1, 448, 3}]; 

ListAnimate[res] 

Mathematica graphics

+4

Jak można nie głosować na tę odpowiedź: jak można oprzeć się "pociągowi równania" biegnącemu wzdłuż toru? – murray

+0

+1. Jesteś naprawdę ekspertem. –