Thread Closed

Plotting in Mathematica

 
Share Thread Thread Tools
May21-08, 10:17 PM   #1
 

Plotting in Mathematica


I want to plot a function in 3D such that the saturation of the color at any point is given by:

[tex]
S = f(x, y, z)
[/tex]

so, when f(x, y, z) is maximum, i want the color at (x, y, z) to be say saturated Red [rgb(255, 255, 0)] and when it is minimum, i want the color to be white.

How do i do that in Mathematica?
PhysOrg.com
PhysOrg
science news on PhysOrg.com

>> Galaxies fed by funnels of fuel
>> The better to see you with: Scientists build record-setting metamaterial flat lens
>> Google eyes emerging markets networks
May21-08, 11:18 PM   #2
 
Are you talking about a surface in 3D colored? Or more like a density plot, say random particles.

If its the first:

F[x_, y_] = x/Exp[x^2 + y^2];
Plot3D[F[x, y], {x, -2, 2}, {y, -2, 2},
ColorFunction -> Function[{x, y, z}, RGBColor[1, 1 - z, 1 - z]]]

Sort of does what you ask.
May21-08, 11:49 PM   #3
 
Well.. in the example you gave, the function represents a set of points which satisfy a given condition. However, i want that each and every point is assigned a color, based on the co-ordinates of the point. How do i do that?
May22-08, 12:09 PM   #4
 

Plotting in Mathematica


So you mean like a 3D density plot. If it drew a pixel at every coordinate, how would you see anything behind the front face of the data? Or are you looking for something like, at certain points its transparent and at others its not?

Because if its fully opaque you'll only see the bounds of the plot and no data inside. Even so I'll try to do it. I'm thinking your best approach (since theres no such thing as DensityPlot3D) is to have it draw a sphere or cube at each coordinate and color accordingly.

I've done something like this before when trying to make graphics for some 3D Crystalline grain growth simulations. Its a pain and I ended up making my own stuff using OpenDX (which I don't really recommend, its difficult).

so I guess let me ask you this, is your data a function of coordinates, or a table of datapoints?
May22-08, 09:45 PM   #5
 
Quote by K.J.Healey View Post
So you mean like a 3D density plot. If it drew a pixel at every coordinate, how would you see anything behind the front face of the data? Or are you looking for something like, at certain points its transparent and at others its not?

Because if its fully opaque you'll only see the bounds of the plot and no data inside. Even so I'll try to do it. I'm thinking your best approach (since theres no such thing as DensityPlot3D) is to have it draw a sphere or cube at each coordinate and color accordingly.

I've done something like this before when trying to make graphics for some 3D Crystalline grain growth simulations. Its a pain and I ended up making my own stuff using OpenDX (which I don't really recommend, its difficult).

so I guess let me ask you this, is your data a function of coordinates, or a table of datapoints?
What I want to do is visualize the behavior of a Spherical Wave. The color at each point should give me the value of the.. let's say Electric Field if it is an EM Wave. Something like:

[tex]
X = X_o Sin[k\sqrt{x^2 + y^2 + z^2} + \omega t]
[/tex]

and i want 't' to be manipulated by the parameter supplied through Animate[] rather than Manipulate[], but that's a different thing. Also, in the above case, the greater 'X' is.. the more opaque i want the color to be.
May22-08, 11:52 PM   #6
 
Yeah, thats basically a 3D density plot. I'll keep looking at it, but remember that what you're talking about isn't saturation, its the alpha channel.
The function Hue[h,s,b,a] the last channel is the alpha.
Maybe theres soemthing you can do in the plot where ColorFunction-> something with Hue[50,50,50,F[x,y,z]] or something.
May22-08, 11:56 PM   #7
 
Or do something like this:
(Where Alph is the function describing the transparency coordinates as a function of xyz)

F[x_, y_] = x/Exp[x^2 + y^2];
Alph[x_, y_, z_] = z; (*Anything here*)
Plot3D[F[x, y], {x, -2, 2}, {y, -2, 2},
ColorFunction ->
Function[{x, y, z}, RGBColor[1, 0, 0, Alph[x, y, z]]]]
Thread Closed
Thread Tools


Similar Threads for: Plotting in Mathematica
Thread Forum Replies
Help with plotting in Mathematica Math & Science Software 13
Plotting in Mathematica Math & Science Software 9
plotting data in mathematica Math & Science Software 12
Mathematica Plotting Question Math & Science Software 2
Help with plotting in Mathematica Math & Science Software 1