감동, 마음이 움직이는 것

[Mathematica] StreamDensityPlot 본문

Tips (Utility, Computer Language, and etc.)

[Mathematica] StreamDensityPlot

Struggler J. 2016. 9. 14. 00:09

아주 좋은 걸 찾아냈다옹 +_+


StreamPlot

일단 시작점으로부터 어떻게 평면위에서 움직이는지 선으로 그려주고 싶으면 StreamPlot을 사용하면 된다. 

StreamPlot[{x/2, y + 1}, {x, 0, 10}, {y, 0, 10},  VectorColorFunction -> "Rainbow", VectorScale -> Medium,  VectorPoints -> Fine]


마찬가지로 처음 세개가 필수이고 내용은 VectorPlot과 동일하다. 뒤에 들어가는 인자는 모두 옵션이다.  참고로 stream의 컬러는 StreamStyle로 바꿀 수 있다. 

또, 여러개의 stream을 한 번에 그릴 수 있다.


StreamPlot[{{vx,vy},{wx,wy},},{x,xmin,xmax},{y,ymin,ymax}]
generates plots of several vector fields.


출처 - http://reference.wolfram.com/language/ref/StreamPlot.html


StreamDensityPlot

제일 대박인건 StreamDensityPlot인데 이건 컨투어를 그려준다. 

StreamDensityPlot[{x/2, y+1}, {x, 0, 10}, {y, 0, 10}, StreamStyle -> Orange,  VectorPoints -> Fine, VectorScale -> Large ,  ColorFunction -> "Rainbow", VectorStyle -> White


마찬가지로 앞의 3개의 인자가 중요하다. 그런데 이렇게 쓰면 각 좌표의 해당 벡터 크기를 덴시티 컬러로 표현해 준다. 만약 크기 말고 다른 scalar함수를 사용하고 싶다면 아래와 같이 s라고 적힌 곳에 정의한 함수를 적어주면 된다. (첨부한 PDF참고) 

StreamDensityPlot[{{vx,vy},s},{x,xmin,xmax},{y,ymin,ymax}] 
generates a stream plot of the vector field {vx,vy} as a function of x and y, superimposed on a background density plot of the scalar field s.

출처 - https://reference.wolfram.com/language/howto/PlotAVectorField.html

http://reference.wolfram.com/language/ref/StreamDensityPlot.html


Stream.pdf