# 3d Plot without using a matrix?

Dolbash

Thu, 11/21/2019 - 02:48 pm

I have a matrix, M, of nxm values. I have 2 additional matrices, each of which calculates an X and Y coordinate that matches, by index, to the first matrix. I want to produce a a graph that uses all 3 pieces of data, X, Y, and Values M for all points nxm, and produce a graph which is similar to a regular 2d wave, but mine will have axes that are not simply Indices. This seems trivial, but I can't quite figure out how to do it. Any nudge in the right direction would be appreciated.

-Cory

I am not sure that I understand your question completely but here is my best shot:

It looks like you need to create a 3D wave that contains nxmx3 points. You fill the first layer with your X values, the second with your Y values and the third with your z-values taken from the matrix M. You can then display that surface in Gizmo as a parametric surface. To read more about this you can execute:

DisplayHelpTopic "Parametric Surface Data Formats"

You can find examples of parametric surfaces e.g., File Menu->Example Experiments->Visualization->GizmoSphere.

I hope this helps,

A.G.

November 21, 2019 at 04:17 pm - Permalink

Thank you, that is a good start! I have done that, and it's not quite what I want. I don't need it to be a 3D rotatable object, I need it to be formed in the same way, having an X,Y,Z matrix, but simply viewed and edited similar to a regular graph. I really want it to show up as if I just made a 2D wave and displayed it, where there are two axes and a color contrast. The gizmo is a bit too clunky to work with, especially if I don't need the 3d Rotation features

November 22, 2019 at 07:51 am - Permalink

You can rotate the graph to look like it is a 2D graph and delete the relevant axes from the plot. After you rotate the graph to the desired orientation you simply lock the rotation (or add a MainTransformation object at the bottom of the display list).

If for some reason this approach does not work for you, you can still create an XYZ triplet wave from your data and pass it to ImageInterpolate with the Voronoi keyword. That will give you an interpolated image corresponding to the data but it will be restricted to the convex domain in the XY plane.

November 23, 2019 at 10:12 am - Permalink