US Budget Visualization Using d3
solomonkahn.com
solomonkahn.com
Actually, it sometimes simply converts blocks into others - switching between 2012 and 2013, the "Justice" block morphs into the "National Infrastructure Bank" block. Very confusing.
The best way to use this isn't to switch between years. If you click on any cell, you can see a graph of how that changes over time. If you double click on any of the cells, you can see a new visualization of everything that makes up that cell. For example, double clicking on the department of justice will show you it is made up of X billion from the department of prisons and X billion from the FBI.
It makes it impossible to compare values in any meaningful sense - either in a relative growth, or the size of the budget as a whole. The animation serves no purpose, other than to make the user wait a few seconds between switching years.
Edit: That said, to say something nice, the animation is technically done very well.
---------
This visualization, while technically impressive, could use a little work.
Comparing values is difficult because I can't see the relative growth between the boxes from year to year, or size of the budget as a whole. I don't quite see how the animation benefits the user, so you may want to scrap it for some sort of differential comparison. I also don't like the delay when I change from year to year. That could be optimized or reduced through the reduction of the animation time.
---------
Yeah, I know it's kind of snarky of me to correct your entire comment here, but I think our community (yeah I know I haven't had my account here long) is overly focused on criticizing. While all the content of your comment was awesome, it could have been stated in a more polite manner.
I'm not sure how to fix the attitude that crops up in developer communities, all I can think to do is point it out when people may be coming off in way they don't mean to. Which is probably the root cause for this https://news.ycombinator.com/item?id=6353957
Your correction (which I don't mind in and of itself) adds complexity and obscures the meaning of my statements. It says in 85 words what I said more clearly (and sharply) in 51. You add a white lie - "technically impressive" - to mask the true meaning of the point that is being made. And the tone is changed to reads as though you're talking to a child.
And - would a person whose second or third language was English more clearly understand your version or mine?
I agree that the community can be overly critical, but I don't think that this sort of criticism is the problem. The kind of criticism that is a problem is non-actionable criticism - insults to the person, or just "X already did this" or "nobody wants this".
I want terse, actionable feedback.
Also - "yeah I know I haven't had my account here long" are defense mechanisms, don't use them. You're a member of the community now, you get a voice like everyone else.
I realize that a lot of times terse can be better, and you modified your own comment better than I ever could. >"You can do better! Here is how it can be improved!"
That little bit of encouragement could be the support that changes the recipients reaction from "F-U man you don't know me" to "Wow, thanks for that criticism, I'll get on that." And you've only added 11 words.
High ranking HN comments tend to be negative, which leads me to feel like HN is not very supportive. This isn't the only metric, but having a good ratio of positive to negative feedback (assuming everything is equally actionable) is important. http://blogs.hbr.org/cs/2013/03/the_ideal_praise-to-criticis...
>Also - "yeah I know I haven't had my account here long" are defense mechanisms, don't use them. You're a member of the community now, you get a voice like everyone else. Thank you, https://news.ycombinator.com/item?id=5636314 this kind of thing has made me hesitant to use terms like "our community".
For example, you can see that in 2012 that 2.89% of the budget went to education, but if you double click, you can see that only 13.73% of that went to elementary and secondary education.
You can also single click anywhere and see a graph of how things have changed over time. So you can see that in 2009 there was a huge spike in elementary and secondary education, and you can go to 2009 to further investigate, and find there was a "State Fiscal Stabilization Fund" in 2009 that sent $14 billion to education, and then went away.
I think another visualization comparing departments would be pretty cool, and might build that one next.
The thing that makes this visualization different than other visualizations is that you can see the individual components of what makes up the large departments. Just double click on any of the boxes. If you single click on any box, you can see how that box changed over time.
So, for example, you can see that in 2012 that 2.89% of the budget went to education, but if you double click, you can see that only 13.73% of that went to elementary and secondary education.
You can also single click anywhere and see a graph of how things have changed over time. So you can see that in 2009 there was a huge spike in elementary and secondary education, and you can go to 2009 to further investigate, and find there was a "State Fiscal Stabilization Fund" in 2009 that sent $14 billion to education, and then went away.
As many have noted, this doesn't do a good job at comparing different departments to each other over time. This isn't a surprise, since a treemap is the completely wrong format to be able to do that. However, it is a very good format for exploring what agencies, bureaus and line items make up the large departments, which is data I've never seen anywhere else before, and why I built this visualization.
Uncaught TypeError: Cannot read property 'settings' of undefined
Chrome/Linux
There are dozens of sites breaking down the spending (this is just another attempt at visualizing the data). A quick search led me to http://nationalpriorities.org/budget-basics/federal-budget-1... where you can find discretionary spending separated out on its own.
But I mean, my understanding is that there is un-allotted money the government is willing to spend, beyond whatever budget they approve. My understanding was that, in particular, the military budget increases dramatically under these mechanisms.
Also - Social Security should also be separate, really, it's a trust fund with a very specific money - if we turned Social Security off tomorrow, it isn't like the money collected could go elsewhere. Money collected into that fund & being spent into that fund should not be able to be reallocated elsewhere.
Compare with the 2001-2002 tech bust, for example.
http://stateofworkingamerica.org/charts/drop-in-employment-d...
I assume that as unemployment benefits drop, these people will begin to move into homelessness.
It's great to allow users to adjust the base year in case they want to, e.g., for purposes of inform how past past dollars relate to today's circumstances (e.g. Neil Cavuto expressing how he worked for $2 an hour when he was younger and loved it and so can we), but 1976 being the base year is not very productive, it's a floating reference that loses relevance as a default.
Unlucky for us, it's even harder to determine a healthy budget than looking at income vs. outlays. E.g. if the money supply grows faster than the national debt then even a small but constant deficit may still be an entirely healthy thing.
For example, if you double click on the department of Justice, you can see it is made up of X billion of the FBI, X billion of the department of prisons, etc...