Visualizing Time_logs

Hi Friends Long Time,

So I have finished an alpha of an internal timecard system that directly links to our shotgun database and results in XL/json and time logs connected to each task an artist has logged time for perday/per time-period. What I am curious about now is if anyone on these forums has any cool knowledge about data visualization programs that deal really well with time based data and can create some nice graphs/overviews for my bosses to visualize time spent verse time bid?

Are there any good solutions for this that would allow me to either make an ami on a project? seq? shot? task? and send the corresponding queried time logs to that program to visualize them in pie charts? graphs?

I have really limited experience with data visualization so I figured I would post here, see if anyone else has done a similar thing at their studio with an internal timecard system :smiley:

Thanks for checking this out,

1 Like

Hi, Sounds interesting, something I would also like to delve in eventually!

There are many many programs to visualize the data. I think a web based interactive visualization would be the best fit, unless you really don’t care about that/want to only print reports. It would allow you to eventually filter and drill data interactively.

I like d3 quite a bit.
There are others like plugins for vue.js, chart.js, etc.
If your solution is web-based, then SVG is your best choice for this, imo.

Decide where your data will be read from, and whether you would need a server for that.
Recently I experimented with baking data into an SVG chart offline and it worked quite nicely. This involves transforming your data to javascript, and injecting it as a variable in a template html page, together with the visualization logic.

Regarding AMIs, it is up to you really, but it makes sense to push just the data somewhere, where the visualization program would pick it up. Unless your visualization program has direct connection to Shotgun, but perhaps you don’t want all data all the time. Something like a postgresql or sqlite database might make sense. Or even store json somewhere, and visualize that; I guess the amounts of data are not huge.

1 Like

I’ve got something like this set up here that’s AMI-based. It graphs estimation baseline, timelog actuals, estimated bid, and completed bid over time at a Shot or Project level. These are generated as static reports from a fixed point in time, not much in the way of interactivity or filtering as @mmoshev suggested.

It was originally implemented using the plotly Python library, and generated offline files for PMO to consume in various high-level reports. More recently, it was reworked to run on a Flask web service using chart.js for the visualization. The biggest benefit of this is it allows the graph to load as a modal overlay directly in the Shotgun website, so anyone can run this in the browser and get their results in context.

1 Like

Sounds cool, mind sharing a screenshot or something?
How did you load it as an overlay in Shotgun?

interesting, this sounds like exactly what I want to do to be honest. If you can share any issues you had, or possibly some more specifics that would be really awesome, but I understand if that’s not possible.
I have been pulled off this for the time being but will probably resume in the next few weeks would be cool to have a bit more info on how you implemented this.
I know nothing about flask but chart.js has been what I’ve been looking at the most for the visualizations, was it difficult to setup the flask server, assuming no experience with doing that before?

I’d be interested too how @dan.stein implemented this. In any case, it would be best if this was provided directly within ShotGrid. Such a time log display in the calendar like view with the possibility of displaying custom fields values(like bid,vacation, etc). Isn’t there such a thing in a roadmap?