Surfplot Whole Numbers: Using the Data Cursor Tool

  • Thread starter Thread starter johnkubik
  • Start date Start date
  • Tags Tags
    Numbers
AI Thread Summary
To display only whole numbers when using the data cursor tool in MATLAB's surfplot, the user needs to evaluate the function over a grid of integer values. The suggestion involves creating a 101x101 matrix of integer values for the function and plotting that matrix as a surface. The user initially faced issues with the data cursor displaying non-integer values and sought a solution to ensure the cursor snaps to the nearest integer data points. After exploring the MATLAB documentation on data cursor functionality, the user ultimately resolved the issue by implementing a for loop to build the matrix and using the plot3 function, achieving the desired outcome of displaying whole numbers.
johnkubik
Messages
15
Reaction score
0
I would like my surfplot to only show whole numbers when I use the data cursor tool. Right now when I use the data cursor it shows x=1.058 y=3.5, z=9.5.

How can I make it so it only evaluates my function over whole numbers, and displays only whole number answers?

example:

ezsurf('3*x*y+4*x+3*y+3', [0,100])

I would like it to only evaluate the function x, 0->100 and y, 0->100 in increments of 1.

Thank you in advance!
 
Physics news on Phys.org
Bump?
 
Perhaps if you create a 101x101 matrix of values for your expression and find a way to plot that matrix as a surface and then you read this

http://www.mathworks.com/help/matla...aying-data-values-interactively.html#f4-44251

where it describes "snapping to the nearest data vertex" then you might be able to accomplish what you are looking for.

But that is just a wild guess
 
thanks for the response. I am going to give it a try.
 
No go, it still does stuff like:

x:11.47
y:19.1
z:1.04e04

Annoying!

I just want it to do whole numbers.
 
Did you make a 101x101 matrix of (integer) individual values and then plot that?
Or did you plot a continuous (real) function 3*x*y+4*x+3*y+3 over 0:100 x 0:100?

Did you then look at that Matlab web page that tells how to set the mouse pointer to jump to the nearest data point, which should have been some integer x and some integer y?
Or did you not set the mouse pointer to jump to the nearest (integer) data point?

I think I understand what you want to do.
The question is whether you are doing what that web page describes or not.
Or whether perhaps that web page applies to your problem or not.

Computers, and software in particular, are annoying. That is life.
 
Last edited:
Ended up doing a for loop to build a matrix. Then using the plot3. It is working correctly now.
 

Similar threads

Replies
3
Views
2K
Replies
1
Views
9K
Replies
6
Views
4K
Replies
1
Views
2K
Replies
4
Views
2K
Replies
8
Views
2K
Back
Top