Skip to content

Commit

Permalink
1. import the shogun-data as a submodule. 2. add serveral lines for
Browse files Browse the repository at this point in the history
gp-demo, for fetch the data from australian.libsvm.h5. 3. add a feature
on all available demos, when user press the button, when the browser do
the ajax activity, the button are disabled to get rid of the duplicate
calculation.
  • Loading branch information
foulwall committed May 22, 2013
1 parent 1b342d4 commit d45d160
Show file tree
Hide file tree
Showing 8 changed files with 42 additions and 8 deletions.
4 changes: 4 additions & 0 deletions .gitmodules
@@ -0,0 +1,4 @@
[submodule "data"]
path = data
url = git@github.com:shogun-toolbox/shogun-data.git
ignore = dirty
1 change: 1 addition & 0 deletions data
Submodule data added at 0f47c8
5 changes: 5 additions & 0 deletions demo/gp.py
Expand Up @@ -5,6 +5,7 @@
import modshogun as sg
import numpy as np
import numpy.random as rnd
import h5py
import json

def entrance(request):
Expand Down Expand Up @@ -37,6 +38,10 @@ def create_toy_data(request):
toy_data['data'].append( { 'x': x[i], 'y': y[i]})

return HttpResponse(json.dumps(toy_data))
def load_toy_data(request):
f = h5py.File('data/toy/australian.libsvm.h5')
data = f["/data/data"]
return HttpResponse(data)

def train(request):
result = []
Expand Down
1 change: 1 addition & 0 deletions shogun_demo/urls.py
Expand Up @@ -20,6 +20,7 @@
url(r'^classification/run_perceptron', 'demo.classification.run_perceptron'),
url(r'^gp/entrance', 'demo.gp.entrance'),
url(r'^gp/create_toy_data', 'demo.gp.create_toy_data'),
url(r'^gp/load_toy_data', 'demo.gp.load_toy_data'),
url(r'^gp/train', 'demo.gp.train'),
url(r'^kernel_matrix/entrance', 'demo.kernel_matrix.entrance'),
url(r'^kernel_matrix/create_toy_data', 'demo.kernel_matrix.create_toy_data'),
Expand Down
5 changes: 4 additions & 1 deletion templates/clustering/index.html
Expand Up @@ -63,7 +63,7 @@
<label> Number of Clusters ( <500 )</label>
<input type="text" value="2" name="number_of_clusters" onkeyup="this.value=this.value.replace(/[^0-9]/g,'')"></br>
<div class="btn-group">
<button type="button" class="btn btn-small btn-primary" onclick="cluster();">Cluster</button>
<button type="button" class="btn btn-small btn-primary" id="clust" onclick="cluster();">Cluster</button>
<button type="button" class="btn btn-small btn-primary" onclick="clear_canvas();">Clear</button>
</div>
</form>
Expand Down Expand Up @@ -221,6 +221,7 @@
url:"cluster",
type: "POST",
dataType: 'text',
beforeSend: function(){$("#clust").attr('disabled', true);},
data: {positive: JSON.stringify(positive_dots),
negative: JSON.stringify(negative_dots),
number_of_clusters: document.argument.number_of_clusters.value,
Expand Down Expand Up @@ -259,11 +260,13 @@
.attr("x2", function(d) {return x(d.x+0.02);})
.attr("y2", function(d) {return y(d.y-0.02);})
.style("stroke", "gray");
$("#clust").attr('disabled', false);

},

error: function(){
alert("Sorry! Got something wrong here, Check your input");
$("#clust").attr('disabled', false);
}
});
}
Expand Down
12 changes: 9 additions & 3 deletions templates/gp/index.html
Expand Up @@ -62,8 +62,8 @@
<label> Kernel Width </label>
<input type="text" value="2.0" name="kernel_width" onkeyup="value=value.replace(/[^\d{1,}\.\d{1,}|\d{1,}]/g,'')">
<div class="btn-group">
<button type="button" class="btn btn-small btn-primary" onclick="create_toy_data();">Generate Sine Data</button>
<button type="button" class="btn btn-small btn-primary" onclick="train();">Train GP</button>
<button type="button" class="btn btn-small btn-primary" id="id_create" onclick="create_toy_data();">Generate Sine Data</button>
<button type="button" class="btn btn-small btn-primary" id="id_train" onclick="train();">Train GP</button>
<button type="button" class="btn btn-small btn-primary" onclick="clear_map();">Clear</button>
</div>
</form>
Expand Down Expand Up @@ -184,6 +184,7 @@
amplitude: document.argument.amplitude.value ,
frequency: document.argument.frequency.value,
noise_level: document.argument.noise_level.value},
beforeSend: function(){$("#id_create").attr('disabled',true);},
success: function(data){
json = $.parseJSON(data)['data'];
svg.selectAll(".dot").remove();
Expand All @@ -197,8 +198,10 @@
.attr("cy", function(d) { return y(d.y); })
.style("fill", "red")
.style("stroke", "none");
$("#id_create").attr('disabled', false);
},
error: function(){alert("Cannot connect to server");}
error: function(){alert("Cannot connect to server");
$("#id_create").attr('disabled', false);}
});
}
var area_end = d3.svg.area()
Expand All @@ -217,6 +220,7 @@
toy_data: JSON.stringify(toy_data),
noise_level: document.argument.noise_level.value,
kernel_width: document.argument.kernel_width.value},
beforeSend: function(){$("#id_train").attr('disabled', true);},
success: function(data){
json = $.parseJSON(data);
if (svg.selectAll(".line")[0].length == 0)
Expand All @@ -236,9 +240,11 @@
.attr("class", "area")
.attr("d", area_end(json))
.style("fill", "rgba(128, 128, 128, 0.25)");
$("#id_train").attr('disabled', false);
},
error: function(){
alert("Error Generated!");
$("#id_train").attr('disabled', false);
}
});
else{
Expand Down
15 changes: 12 additions & 3 deletions templates/kernel_matrix/index.html
Expand Up @@ -77,8 +77,8 @@
<label> degree </label>
<input type="text" value="5" name="degree" onkeyup="value=value.replace(/[^\d]/g,'')">
<div class="btn-group">
<button type="button" class="btn btn-small btn-primary" onclick="create_toy_data();">Generate Sine Data</button>
<button type="button" class="btn btn-small btn-primary" onclick="generate_matrix();">Draw</button>
<button type="button" class="btn btn-small btn-primary" id="generate" onclick="create_toy_data();">Generate Sine Data</button>
<button type="button" class="btn btn-small btn-primary" id="drawing" onclick="generate_matrix();">Draw</button>
<button type="button" class="btn btn-small btn-primary" onclick="clear_map();">Clear</button>
</div>
<label>legend</label>
Expand Down Expand Up @@ -182,6 +182,9 @@
amplitude: document.argument.amplitude.value ,
frequency: document.argument.frequency.value,
noise_level: document.argument.noise_level.value},
beforeSend:function(){
$("#generate").attr('disabled', true);
},
success: function(data){
json = $.parseJSON(data)['data'];
svg.selectAll(".dot").remove();
Expand All @@ -195,8 +198,9 @@
.attr("cy", function(d) { return y(d.y); })
.style("fill", "red")
.style("stroke", "none");
$("#generate").attr('disabled', false)
},
error: function(){alert("Cannot connect to server");}
error: function(){alert("Cannot connect to server"); $("#generate").attr('disabled',true);}
});
}
var color = d3.scale.linear()
Expand All @@ -217,6 +221,9 @@
kernel: document.argument.kernel.value,
degree: document.argument.degree.value
},
beforeSend:function(){
$("#drawing").attr('disabled', true);
},
success:function(data){
heatmap = $.parseJSON(data);
$("#heatmap").remove();
Expand Down Expand Up @@ -245,8 +252,10 @@
}
}
context.putImageData(image, 0, 0);
$("#drawing").attr('disabled', false);
},
error: function(){
$("#drawing").attr('disabled', false);
alert("Error Generated!");
}
});
Expand Down
7 changes: 6 additions & 1 deletion templates/svr/index.html
Expand Up @@ -68,7 +68,7 @@
<label> d </label>
<input type="text" value="5" name="d" onkeyup="value=value.replace(/[^\d]/g,'')">
<div class="btn-group">
<button type="button" class="btn btn-small btn-primary" onclick="regression();">Regression</button>
<button type="button" class="btn btn-small btn-primary" id="regress" onclick="regression();">Regression</button>
<button type="button" class="btn btn-small btn-primary" onclick="clear_map();">Clear</button>
</div>
</form>
Expand Down Expand Up @@ -257,6 +257,9 @@
kernel: document.argument.kernel.value,
sigma: document.argument.sigma.value,
d: document.argument.d.value},
beforeSend: function(){
$("#regress").attr('disabled', true);
},
success: function(data){
json = $.parseJSON(data);
json.forEach(function(d) {
Expand All @@ -274,10 +277,12 @@
svg.selectAll(".line")
.transition().duration(1000)
.attr("d", line(json));
$("#regress").attr('disabled', false);
},

error: function(){
alert("Error Generated!");
$("#regress").attr('disabled', false);
}
});
else{
Expand Down

0 comments on commit d45d160

Please sign in to comment.