KnowledgeHub
Questions
Tags
Users
Search
Alex Rivera
|
Logout
Edit Question
Title
Body
I am trying to make a 3-dimensional surface plot for the expression: z = y^2/x, for x in the interval [-2,2] and y in the interval [-1.4,1.4]. I also want the z-values to range from -4 to 4. The problem is that when I'm viewing the finished surfaceplot, the z-axis values do not stop at [-4,4]. So my question is how I can "remove" the z-axis value that range outside the intervall [-4,4] from the finished plot? My code is: from mpl_toolkits.mplot3d import axes3d import matplotlib.pyplot as plt import numpy as np fig = plt.figure() ax = fig.gca(projection="3d") x = np.arange(-2.0,2.0,0.1,float) # x in interval [-2,2] y = np.arange(-1.4,1.4,0.1,float) # y in interval [-1.4,1.4] x,y = np.meshgrid(x,y) z = (y**2/x) # z = y^2/x ax.plot_surface(x, y, z,rstride=1, cstride=1, linewidth=0.25) ax.set_zlim3d(-4, 4) # viewrange for z-axis should be [-4,4] ax.set_ylim3d(-2, 2) # viewrange for y-axis should be [-2,2] ax.set_xlim3d(-2, 2) # viewrange for x-axis should be [-2,2] plt.show()
Tags (comma-separated)
Save Edits
Cancel