Skip to content
Snippets Groups Projects
Commit 45e718c5 authored by Nathan Meyer's avatar Nathan Meyer
Browse files

Labs 9-10

parent d9507504
No related branches found
No related tags found
No related merge requests found
File added
File added
{'Name':'ARISE Academy Charter High School','Type':'CS','Enrollments':'183','Male Dropouts':'1','Female Dropouts':'1','Dropouts':'2'},{'Name':'ASPIRA Bilingual Cyber Charter School','Type':'CS','Enrollments':'57','Male Dropouts':'2','Female Dropouts':'6','Dropouts':'8'},{'Name':'Ad Prima CS','Type':'CS','Enrollments':'26','Male Dropouts':'0','Female Dropouts':'0','Dropouts':'0'},{'Name':'Alliance for Progress CS','Type':'CS','Enrollments':'24','Male Dropouts':'0','Female Dropouts':'0','Dropouts':'0'},{'Name':'Philadelphia City SD','Type':'SD','Enrollments':'63983','Male Dropouts':'3092','Female Dropouts':'2644','Dropouts':'5736'}
def mapper(jsmr_context, data):
counts_map = eval(data)
for key in counts_map:
count = counts_map[key]
jsmr_context.Emit(key, str(count))
def reducer(jsmr_context, key):
sum = 0
while jsmr_context.HaveMoreValues():
count_str = jsmr_context.GetNextValue()
count = int(count_str)
sum += count
output_str = 'total %s : %d' % (key, sum)
jsmr_context.Emit(output_str)
{ 'Name':'ARISE Academy Charter High School', 'Type':'CS', 'Enrollments':'183', 'Male Dropouts':'1', 'Female Dropouts':'1', 'Dropouts':'2' }
{ 'Name':'ASPIRA Bilingual Cyber Charter School', 'Type':'CS', 'Enrollments':'57', 'Male Dropouts':'2', 'Female Dropouts':'6', 'Dropouts':'8' }
{ 'Name':'Ad Prima CS', 'Type':'CS', 'Enrollments':'26', 'Male Dropouts':'0', 'Female Dropouts':'0', 'Dropouts':'0' }
{ 'Name':'Alliance for Progress CS', 'Type':'CS', 'Enrollments':'24', 'Male Dropouts':'0', 'Female Dropouts':'0', 'Dropouts':'0' }
{ 'Name':'Philadelphia City SD', 'Type':'SD', 'Enrollments':'63983', 'Male Dropouts':'3092', 'Female Dropouts':'2644', 'Dropouts':'5736' }
aj656@drexel.edu
File added
File added
var numberOfColumns = 50;
var pixelsPerColumn = width / numberOfColumns;
var columnY = [];
for (var i=0; i<numberOfColumns; i++) {
columnY[i] = randomInt(0, height);
}
var characters = "0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ!@#$%^&*";
c.font = "12px Courier";
function step() {
c.fillStyle = "rgba(0,0,0,0.05)";
c.fillRect(0, 0, width, height);
c.fillStyle = "#0f0";
for (var i=0; i<numberOfColumns; i++) {
var r = randomInt(0, characters.length);
var char = characters.substring(r, r+1);
c.fillText(char, i*pixelsPerColumn, columnY[i]);
columnY[i] += pixelsPerColumn;
if (columnY[i] > height) {
columnY[i] -= height;
}
}
}
loop(step, 100);
-------------------
function resetStar(star) {
star.x = width/2;
star.y = height/2;
var speed = randomFloat(.1, 5);
var angle = randomFloat(0, 2*Math.PI);
star.dx = speed * Math.cos(angle);
star.dy = speed * Math.sin(angle);
star.brightness = randomFloat(2, 5);
}
var stars = [];
for (var i=0; i<500; i++) {
var star = {};
resetStar(star);
stars.push(star);
}
function step() {
c.fillStyle = "#000";
c.fillRect(0, 0, width, height);
c.lineWidth = 2;
for (var i=0; i<stars.length; i++) {
var star = stars[i];
c.beginPath();
c.moveTo(star.x, star.y);
star.x += star.dx;
star.y += star.dy;
star.brightness = Math.min(star.brightness*1.05, 255);
c.lineTo(star.x, star.y);
var b = Math.round(star.brightness);
c.strokeStyle = "rgb(" + b + "," + b + "," + b + ")";
c.stroke();
c.closePath();
star.dx *= 1.05;
star.dy *= 1.05;
if (star.x < 0 || star.x > width || star.y < 0 || star.y > height) {
resetStar(star);
}
}
}
loop(step, 20);
\ No newline at end of file
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment