Good Morning Everyone,
I have a vision screen that will grab 5 points of data from a device and needs to do some number crunching. I am trying to use the code below for a best fit plane but it seems like NumPy is not recognized. Does anyone know how else this can be accomplished in Jython?
import matplotlib.pyplot as plt from mpl_toolkits.mplot3d import Axes3D import numpy as np N_POINTS = 10 TARGET_X_SLOPE = 2 TARGET_y_SLOPE = 3 TARGET_OFFSET = 5 EXTENTS = 5 NOISE = 5 # create random data xs = [np.random.uniform(2*EXTENTS)-EXTENTS for i in range(N_POINTS)] ys = [np.random.uniform(2*EXTENTS)-EXTENTS for i in range(N_POINTS)] zs =  for i in range(N_POINTS): zs.append(xs[i]*TARGET_X_SLOPE + \ ys[i]*TARGET_y_SLOPE + \ TARGET_OFFSET + np.random.normal(scale=NOISE)) # plot raw data plt.figure() ax = plt.subplot(111, projection='3d') ax.scatter(xs, ys, zs, color='b') # do fit tmp_A =  tmp_b =  for i in range(len(xs)): tmp_A.append([xs[i], ys[i], 1]) tmp_b.append(zs[i]) b = np.matrix(tmp_b).T A = np.matrix(tmp_A) fit = (A.T * A).I * A.T * b errors = b - A * fit residual = np.linalg.norm(errors) print "solution:" print "%f x + %f y + %f = z" % (fit, fit, fit) print "errors:" print errors print "residual:" print residual