| 1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950 |
- #!/usr/bin/python
-
- import matplotlib.pyplot as plt
- import numpy as np
- import pylab as pl
- def prettyPicture(clf, X_test, y_test):
- x_min = 0.0; x_max = 1.0
- y_min = 0.0; y_max = 1.0
-
- # Plot the decision boundary. For that, we will assign a color to each
- # point in the mesh [x_min, m_max]x[y_min, y_max].
- h = .01 # step size in the mesh
- xx, yy = np.meshgrid(np.arange(x_min, x_max, h), np.arange(y_min, y_max, h))
- Z = clf.predict(np.c_[xx.ravel(), yy.ravel()])
- # Put the result into a color plot
- Z = Z.reshape(xx.shape)
- plt.xlim(xx.min(), xx.max())
- plt.ylim(yy.min(), yy.max())
- plt.pcolormesh(xx, yy, Z, cmap=pl.cm.seismic)
- # Plot also the test points
- grade_sig = [X_test[ii][0] for ii in range(0, len(X_test)) if y_test[ii]==0]
- bumpy_sig = [X_test[ii][1] for ii in range(0, len(X_test)) if y_test[ii]==0]
- grade_bkg = [X_test[ii][0] for ii in range(0, len(X_test)) if y_test[ii]==1]
- bumpy_bkg = [X_test[ii][1] for ii in range(0, len(X_test)) if y_test[ii]==1]
- plt.scatter(grade_sig, bumpy_sig, color = "b", label="fast")
- plt.scatter(grade_bkg, bumpy_bkg, color = "r", label="slow")
- plt.legend()
- plt.xlabel("bumpiness")
- plt.ylabel("grade")
- #plt.savefig("test.png")
- import base64
- import json
- def output_image(name, format, bytes):
- image_start = "BEGIN_IMAGE_f9825uweof8jw9fj4r8"
- image_end = "END_IMAGE_0238jfw08fjsiufhw8frs"
- data = {}
- data['name'] = name
- data['format'] = format
- data['bytes'] = base64.encodestring(bytes)
- print(image_start+json.dumps(data)+image_end)
|