Question: Plot matrix with axes values, constrained

I have a square matrix of data points. Each point is between 0 to 0.2. I wish to plot it and set the axes to values from 0 to 1. I want the 3D plot to be plotted with a constrained scaling. The two options I have are plots:-matrixplot and plots:-surfdata. 

* matrixplot can constrain the data, but it isn't obvious how to change the axes so that it shows from 0 to 1 in both directions. 

* In surfaceplot, it is easy to adjust the axes values, but scaling=constrained does nothing. 

(I assume someone else might also appreciate the answer. So, instead of me continuing to struggle, I post here and hope someone can answer without the use of many brain cells.) 

Example attached.

restart; N := 20; M := LinearAlgebra:-RandomMatrix(N, generator = rand(0 .. .2))

 

Scaling can be easily controlled, but labels are bad

plots:-matrixplot(N*M, labels = ["x", "y", "V"], scaling = constrained, axis = [tickmarks = [seq(0 .. 1, numelems = 10)]], size = [600, 600])

 

Axes are shown nicely, but scaling cannot be constrained.

plots:-surfdata(M, 0 .. 1, 0 .. 1, labels = ["x", "y", "V"], scaling = constrained, size = [600, 600])

 
 

NULL

Download Scaled_matrix_plot_with_axes.mw

Please Wait...