Je souhaite créer un tracé 3D représentant une régression multiple comportant deux variables x. Je veux avoir des points de dispersion pour les données y-variables réelles et aussi un plan qui représente la droite de régression générée par mes deux variables x. Le facteur supplémentaire de complication est que toutes les variables sont représentées par des matrices.Comment créer une diffusion 3D avec un plan?
# Variables
a # 14x1 matrix representing an x variable
b # 14x1 matrix representing an x variable
C# 14x1 matrix representing the y variable
BETAS # 2x1 matrix holding the beta coefficients of the x variables
z = (BETAS[0]*a + BETAS[1]*b) # the expected value of c based on our regression
new_array # variable representing the regression line - used previously to plot the regression line in 2d space`
# Plot in 3d
from mpl_toolkits.mplot3d import Axes3D
fig = plt.figure()
ax = plt.axes(projection='3d')
plt.hold(True)
plt.plot(new_array[0], new_array[1], 'red')
ax.plot_surface(a, b, z)
plt.show()
Merci beaucoup!
Salut et bienvenue à SO. S'il vous plaît regardez comment créer un exemple minimal, complet et vérifiable du code pour votre question: http://stackoverflow.com/help/mcve –
par exemple. Au lieu de commenter ce que contient chaque variable, vous pouvez facilement écrire du code pour définir des données aléatoires: a = np.random.rand (14), etc. Dans ce cas, toute personne répondant à votre question peut copier votre code et vous aider à résoudre le problème –