Skip to content

Instantly share code, notes, and snippets.

@bjorngi
Last active September 15, 2015 06:52
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save bjorngi/2b4190cc3563dee08644 to your computer and use it in GitHub Desktop.
Save bjorngi/2b4190cc3563dee08644 to your computer and use it in GitHub Desktop.
worktimer
{"description":"worktimer","endpoint":"","display":"svg","public":true,"require":[],"fileconfigs":{"inlet.js":{"default":true,"vim":false,"emacs":false,"fontSize":12},"_.md":{"default":true,"vim":false,"emacs":false,"fontSize":12},"config.json":{"default":true,"vim":false,"emacs":false,"fontSize":12},"feber.csv":{"default":true,"vim":false,"emacs":false,"fontSize":12},"style.css":{"default":true,"vim":false,"emacs":false,"fontSize":12},"timer.csv":{"default":true,"vim":false,"emacs":false,"fontSize":12}},"play":false,"loop":false,"restart":false,"autoinit":true,"pause":true,"loop_type":"period","bv":false,"nclones":15,"clone_opacity":0.4,"duration":3000,"ease":"linear","dt":0.01,"tab":"edit","display_percent":0.7,"thumbnail":"http://i.imgur.com/Z4ghHZY.png","fullscreen":false,"ajax-caching":true}
var data = tributary.timer;
var timeFormat = d3.time.format('%H:%M:%S');
var margin = {top: 20, right: 80, bottom: 100, left: 40},
w = 880 - margin.left - margin.right,
h = 500 - margin.top - margin.bottom;
var svg = d3.select("svg")
.attr("width", w + margin.left + margin.right)
.attr("height", h + margin.top + margin.bottom)
.append("g")
.attr("transform", "translate(" + margin.left + "," + margin.top + ")");
summedHours = d3.nest()
.key(function(d) { return d.User; })
.rollup(function(d) {
return d3.sum(d, function(g) {
var formatedTime = timeFormat.parse(g.Duration);
var minutes = ((formatedTime.getHours() * 60) + formatedTime.getMinutes())
return minutes;
})
})
.entries(data)
summedHours = summedHours.map(function(d) {
var hours = Math.floor(d.values / 60);
var minutes = d.values % 60;
return {
'user': d.key,
'hours': hours,
'minutes': minutes,
'totalMinutes': d.values
}
});
console.log(summedHours);
body {
font: 10px sans-serif;
}
.axis path,
.axis line {
fill: none;
stroke: #000;
shape-rendering: crispEdges;
}
.x.axis path {
fill: none;
stroke: #000;
shape-rendering: crispEdges;
}
.line path {
fill: none;
stroke: black;
stroke-width: 3px;
}
.bg {
opacity: 0.1;
}
.fml {
fill: red;
}
.ok {
fill: yellow;
}
.yeah {
fill: green;
}
User Email Client Project Task Description Billable Start date Start time End date End time Duration Tags Amount ()
Bjorn bjorn@skylabs.no Utvikling No 2015-09-08 08:05:00 2015-09-08 12:10:00 04:05:00
Bjorn bjorn@skylabs.no Utvikling No 2015-09-08 12:41:00 2015-09-08 17:20:00 04:39:00
Bjorn bjorn@skylabs.no Utvikling No 2015-09-09 09:12:00 2015-09-09 12:00:00 02:48:00
Ida bjorn@skylabs.no Utvikling No 2015-09-09 12:30:00 2015-09-09 16:56:00 04:26:00
Bjorn bjorn@skylabs.no Utvikling No 2015-09-10 09:00:00 2015-09-10 16:30:00 07:30:00
Bjorn bjorn@skylabs.no Utvikling No 2015-09-11 09:12:00 2015-09-11 11:35:00 02:23:00
Bjorn bjorn@skylabs.no Utvikling No 2015-09-11 12:07:00 2015-09-11 16:32:00 04:25:00
Ida bjorn@skylabs.no Utvikling No 2015-09-11 18:10:00 2015-09-11 19:24:00 01:14:00
Bjorn bjorn@skylabs.no Utvikling No 2015-09-13 16:35:00 2015-09-13 18:00:00 01:25:00
Bjorn bjorn@skylabs.no Utvikling No 2015-09-13 20:00:00 2015-09-13 21:00:00 01:00:00
Bjorn bjorn@skylabs.no Utvikling No 2015-09-14 07:50:00 2015-09-14 12:00:00 04:10:00
Bjorn bjorn@skylabs.no Utvikling No 2015-09-14 12:29:45 2015-09-14 16:06:01 03:36:16
Bjorn bjorn@skylabs.no Utvikling No 2015-09-14 17:30:00 2015-09-14 20:00:00 02:30:00
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment