MathGroup Archive 2009

[Date Index] [Thread Index] [Author Index]

Search the Archive

Re: Logarithmic Axes for ListPlot3D

  • To: mathgroup at smc.vnet.net
  • Subject: [mg102617] Re: [mg102606] Logarithmic Axes for ListPlot3D
  • From: "David Park" <djmpark at comcast.net>
  • Date: Mon, 17 Aug 2009 04:02:17 -0400 (EDT)
  • References: <24065561.1250421628175.JavaMail.root@n11>

Again, Presentations has a CustomTicks expression that generates major and
minor linear or log ticks. So

Needs["Presentations`Master`"]

data2 = data /. {x_, y_, z_} -> {Log10[x], Log10[y], z};

logticks = CustomTicks[Log10, {-4, 4, {1.}, Range[2, 9]}];
surfacecolor = ColorData["Legacy"]["CornflowerBlue"];
Draw3DItems[
 {surfacecolor,
  ListDraw3D[data2,
   Mesh -> {Range[-3, 4], Range[-4, 2]}]},
 NeutralLighting[0, .5, .1, 50 \[Degree]],
 NiceRotation,
 Axes -> True, AxesLabel -> {"x", "y", "z"},
 Ticks -> {logticks, logticks, Automatic},
 BoxRatios -> {1, 1, .5},
 ImagePadding -> 30,
 ImageSize -> 600
 ]

Since the surface faces "the wrong way" the lighting was rotated to give a
better rendition. That put the mesh lines at the decade values. I'm not
certain if it's a good idea or not, but we could put a full log mesh on the
surface by:

logticks = CustomTicks[Log10, {-4, 4, {1.}, Range[2, 9]}];
surfacecolor = ColorData["Legacy"]["CornflowerBlue"];
Draw3DItems[
 {surfacecolor,
  ListDraw3D[data2,
   Mesh -> {Log10@Flatten@Table[Range[9] 10^n, {n, -3., 4}], 
     Log10@Flatten@Table[Range[9] 10^n, {n, -4., 2}]}]},
 NeutralLighting[0, .5, .1, 50 \[Degree]],
 NiceRotation,
 Axes -> True, AxesLabel -> {"x", "y", "z"},
 Ticks -> {logticks, logticks, Automatic},
 BoxRatios -> {1, 1, .5},
 ImagePadding -> 30,
 ImageSize -> 600
 ]

And we could gradient color the surface with:

logticks = CustomTicks[Log10, {-4, 4, {1.}, Range[2, 9]}];
surfacecolor = ColorData["Legacy"]["CornflowerBlue"];
Draw3DItems[
 {ListDraw3D[data2,
   Mesh -> {Log10@Flatten@Table[Range[9] 10^n, {n, -3., 4}], 
     Log10@Flatten@Table[Range[9] 10^n, {n, -4., 2}]},
   MeshStyle -> GrayLevel[.6],
   ColorFunctionScaling -> False,
   ColorFunction -> 
    Function[{x, y, z}, ColorData["ThermometerColors"][z]]]},
 NeutralLighting[1, .8, .6, 50 \[Degree]],
 NiceRotation,
 PlotRange -> All,
 Axes -> True, AxesLabel -> {"x", "y", "z"},
 Ticks -> {logticks, logticks, Automatic},
 BoxRatios -> {1, 1, .5},
 ImagePadding -> 30,
 ImageSize -> 600
 ]


David Park
djmpark at comcast.net
http://home.comcast.net/~djmpark/  



From: pasQualle [mailto:pschulthess at googlemail.com] 

Hi (again) guys,

I want to plot the following data into an 3d plot with the x and y
axis logarithmic.

data={{0.001, 0.0001, 0.00602136}, {0.001, 0.000316228,
  0.00606695}, {0.001, 0.001, 0.00621106}, {0.001, 0.00316228,
  0.00666622}, {0.001, 0.01, 0.00810011}, {0.001, 0.0316228,
  0.012581}, {0.001, 0.1, 0.026241}, {0.001, 0.316228,
  0.0650305}, {0.001, 1., 0.157657}, {0.001, 3.16228,
  0.319595}, {0.001, 10., 0.51409}, {0.001, 31.6228,
  0.685412}, {0.001, 100., 0.8092}, {0.00316228, 0.0001,
  0.00196431}, {0.00316228, 0.000316228, 0.00210881}, {0.00316228,
  0.001, 0.00256522}, {0.00316228, 0.00316228,
  0.00400304}, {0.00316228, 0.01, 0.00849605}, {0.00316228, 0.0316228,
   0.0221923}, {0.00316228, 0.1, 0.0610781}, {0.00316228, 0.316228,
  0.153901}, {0.00316228, 1., 0.316102}, {0.00316228, 3.16228,
  0.510834}, {0.00316228, 10., 0.682336}, {0.00316228, 31.6228,
  0.806252}, {0.00316228, 100., 0.886269}, {0.01, 0.0001,
  0.00081157}, {0.01, 0.000316228, 0.00126837}, {0.01, 0.001,
  0.00270742}, {0.01, 0.00316228, 0.0072042}, {0.01, 0.01,
  0.0209111}, {0.01, 0.0316228, 0.0598211}, {0.01, 0.1,
  0.152673}, {0.01, 0.316228, 0.314869}, {0.01, 1., 0.509587}, {0.01,
  3.16228, 0.681131}, {0.01, 10., 0.805133}, {0.01, 31.6228,
  0.885235}, {0.01, 100., 0.933874}, {0.0316228, 0.0001,
  0.000858268}, {0.0316228, 0.000316228, 0.00229768}, {0.0316228,
  0.001, 0.00679537}, {0.0316228, 0.00316228, 0.0205031}, {0.0316228,
  0.01, 0.059401}, {0.0316228, 0.0316228, 0.152157}, {0.0316228, 0.1,
  0.314076}, {0.0316228, 0.316228, 0.508507}, {0.0316228, 1.,
  0.680017}, {0.0316228, 3.16228, 0.804187}, {0.0316228, 10.,
  0.884501}, {0.0316228, 31.6228, 0.933311}, {0.0316228, 100.,
  0.961973}, {0.1, 0.0001, 0.00216801}, {0.1, 0.000316228,
  0.00666512}, {0.1, 0.001, 0.0203652}, {0.1, 0.00316228,
  0.0591966}, {0.1, 0.01, 0.151591}, {0.1, 0.0316228, 0.312552}, {0.1,
   0.1, 0.506001}, {0.1, 0.316228, 0.677342}, {0.1, 1.,
  0.802008}, {0.1, 3.16228, 0.882974}, {0.1, 10., 0.932317}, {0.1,
  31.6228, 0.961343}, {0.1, 100., 0.978082}, {0.316228, 0.0001,
  0.00662087}, {0.316228, 0.000316228, 0.0202933}, {0.316228, 0.001,
  0.0589068}, {0.316228, 0.00316228, 0.150149}, {0.316228, 0.01,
  0.308093}, {0.316228, 0.0316228, 0.498423}, {0.316228, 0.1,
  0.669163}, {0.316228, 0.316228, 0.795342}, {0.316228, 1.,
  0.87835}, {0.316228, 3.16228, 0.929385}, {0.316228, 10.,
  0.959572}, {0.316228, 31.6228, 0.977037}, {0.316228, 100.,
  0.987018}, {1., 0.0001, 0.0201815}, {1., 0.000316228,
  0.0581134}, {1., 0.001, 0.145826}, {1., 0.00316228, 0.294722}, {1.,
  0.01, 0.475739}, {1., 0.0316228, 0.644528}, {1., 0.1,
  0.775089}, {1., 0.316228, 0.864204}, {1., 1., 0.920389}, {1.,
  3.16228, 0.954145}, {1., 10., 0.973861}, {1., 31.6228,
  0.985188}, {1., 100., 0.991636}, {3.16228, 0.0001,
  0.0557516}, {3.16228, 0.000316228, 0.133638}, {3.16228, 0.001,
  0.260159}, {3.16228, 0.00316228, 0.419575}, {3.16228, 0.01,
  0.581765}, {3.16228, 0.0316228, 0.720281}, {3.16228, 0.1,
  0.823716}, {3.16228, 0.316228, 0.89358}, {3.16228, 1.,
  0.937562}, {3.16228, 3.16228, 0.964009}, {3.16228, 10.,
  0.979472}, {3.16228, 31.6228, 0.988363}, {3.16228, 100.,
  0.993427}, {10., 0.0001, 0.107778}, {10., 0.000316228,
  0.198046}, {10., 0.001, 0.315953}, {10., 0.00316228,
  0.461271}, {10., 0.01, 0.617687}, {10., 0.0316228, 0.751537}, {10.,
  0.1, 0.84783}, {10., 0.316228, 0.910128}, {10., 1., 0.948034}, {10.,
   3.16228, 0.970314}, {10., 10., 0.983158}, {10., 31.6228,
  0.990482}, {10., 100., 0.994633}, {31.6228, 0.0001,
  0.129224}, {31.6228, 0.000316228, 0.230745}, {31.6228, 0.001,
  0.386007}, {31.6228, 0.00316228, 0.563618}, {31.6228, 0.01,
  0.717288}, {31.6228, 0.0316228, 0.82748}, {31.6228, 0.1,
  0.898378}, {31.6228, 0.316228, 0.941338}, {31.6228, 1.,
  0.966522}, {31.6228, 3.16228, 0.981017}, {31.6228, 10.,
  0.989275}, {31.6228, 31.6228, 0.993953}, {31.6228, 100.,
  0.996595}, {100., 0.0001, 0.191113}, {100., 0.000316228,
  0.354115}, {100., 0.001, 0.542481}, {100., 0.00316228,
  0.704481}, {100., 0.01, 0.820011}, {100., 0.0316228,
  0.894097}, {100., 0.1, 0.938906}, {100., 0.316228, 0.965147}, {100.,
   1., 0.980241}, {100., 3.16228, 0.988838}, {100., 10.,
  0.993707}, {100., 31.6228, 0.996456}, {100., 100.,
  0.998006}, {316.228, 0.0001, 0.34218}, {316.228, 0.000316228,
  0.534132}, {316.228, 0.001, 0.699036}, {316.228, 0.00316228,
  0.816645}, {316.228, 0.01, 0.892093}, {316.228, 0.0316228,
  0.93774}, {316.228, 0.1, 0.964479}, {316.228, 0.316228,
  0.979861}, {316.228, 1., 0.988623}, {316.228, 3.16228,
  0.993586}, {316.228, 10., 0.996388}, {316.228, 31.6228,
  0.997967}, {316.228, 100., 0.998856}, {1000., 0.0001,
  0.528549}, {1000., 0.000316228, 0.694761}, {1000., 0.001,
  0.813769}, {1000., 0.00316228, 0.890304}, {1000., 0.01,
  0.936676}, {1000., 0.0316228, 0.96386}, {1000., 0.1,
  0.979508}, {1000., 0.316228, 0.988422}, {1000., 1.,
  0.993472}, {1000., 3.16228, 0.996324}, {1000., 10.,
  0.997931}, {1000., 31.6228, 0.998836}, {1000., 100.,
  0.999345}, {3162.28, 0.0001, 0.690119}, {3162.28, 0.000316228,
  0.810649}, {3162.28, 0.001, 0.888371}, {3162.28, 0.00316228,
  0.935529}, {3162.28, 0.01, 0.963197}, {3162.28, 0.0316228,
  0.979128}, {3162.28, 0.1, 0.988207}, {3162.28, 0.316228,
  0.99335}, {3162.28, 1., 0.996255}, {3162.28, 3.16228,
  0.997892}, {3162.28, 10., 0.998814}, {3162.28, 31.6228,
  0.999333}, {3162.28, 100., 0.999625}, {10000., 0.0001,
  0.807807}, {10000., 0.000316228, 0.88664}, {10000., 0.001,
  0.934513}, {10000., 0.00316228, 0.962611}, {10000., 0.01,
  0.978795}, {10000., 0.0316228, 0.988018}, {10000., 0.1,
  0.993244}, {10000., 0.316228, 0.996195}, {10000., 1.,
  0.997858}, {10000., 3.16228, 0.998795}, {10000., 10.,
  0.999322}, {10000., 31.6228, 0.999619}, {10000., 100., 0.999786}}

Is this possible? And when, how can I do this?
Thank you very much for your kind help.

Pascal.




  • Prev by Date: Re: Imported Image In Manipulate Resizing in 7
  • Next by Date: Searching through Virtual Book
  • Previous by thread: Re: Logarithmic Axes for ListPlot3D
  • Next by thread: Re: Intersection of line and a surface of revolution - a