fork download
  1. import numpy as np
  2. import matplotlib.pyplot as plt
  3. from mpl_toolkits.mplot3d import Axes3D
  4.  
  5. # Parámetros de la superficie con mayor resolución
  6. u = np.linspace(0, 2 * np.pi, 200)
  7. v = np.linspace(0, 1, 200)
  8. u, v = np.meshgrid(u, v)
  9.  
  10. # Coordenadas en cilíndricas
  11. x = v * np.cos(u)
  12. y = v * np.sin(u)
  13. z = np.sqrt(4 - x**2 - y**2)
  14.  
  15. # Gráfica de la superficie mejorada con colores comunes
  16. fig = plt.figure(figsize=(10, 7))
  17. ax = fig.add_subplot(111, projection='3d')
  18. ax.plot_surface(x, y, z, color='skyblue', edgecolor='grey', alpha=0.7)
  19.  
  20. # Agregamos líneas de contorno en blanco
  21. ax.contour(x, y, z, zdir='z', offset=0, colors='white')
  22. ax.contour(x, y, z, zdir='x', offset=-1.5, colors='white')
  23. ax.contour(x, y, z, zdir='y', offset=1.5, colors='white')
  24.  
  25. # Ajustes de la figura
  26. ax.set_xlabel('X')
  27. ax.set_ylabel('Y')
  28. ax.set_zlabel('Z')
  29. ax.set_title('Superficie S')
  30. ax.set_xlim(-1.5, 1.5)
  31. ax.set_ylim(-1.5, 1.5)
  32. ax.set_zlim(0, 2)
  33. ax.view_init(elev=30, azim=120) # Cambia la perspectiva de la vista
  34.  
  35. plt.show()
Success #stdin #stdout 1s 69160KB
stdin
Standard input is empty
stdout
Standard output is empty