Posts for Tag: graph

Interactive California Reservoir Levels Dashboard

Posted In: Environment | Water

How much water is in California’s reservoirs?

Check out my new Colorado river reservoirs visualization.

I also added the ability to select specific reservoirs to display on the graph and share a custom URL which will point those selected reservoirs (click on “list” button on top right of dashboard).

If you are reading this, it’s probably the winter rainy season in California again, and time to check on the status of the water in the California reservoirs. I previously made a “bar graph” showing the overall level of water in the major California reservoirs. This dashboard provides a bit more detail on the state of each of the reservoirs while also showing an aggregate total. It updates hourly using data from the California Department of Water Resources (DWR) website, giving an up-to-date picture of California reservoir levels.

This is a marimekko (or mekko) graph which may take some time to understand if you aren’t used to seeing them. Each “row” represents one reservoir, with bars showing how much of the reservoir is filled (blue) and unfilled (brown). The height of the “row” indicates how much water the reservoir could hold. Shasta is the reservoir with the largest capacity and so it is the tallest row. The proportion of blue to brown will show how full it is, while the red line shows the historical level that reservoir is typically at for this date of the water year. The blue line indicates the reservoir’s water level one year ago today. There are many very small reservoirs (relative to Shasta) so the bars will be very thin to the point where they are barely a sliver or may not even show up.

Instructions:
If you are on a computer, you can hover your cursor over a reservoir and the dashboard at the top will provide information about that individual reservoir. If you are on a mobile device you can tap the reservoir to get that same info. It’s not possible to see or really interact with the tiniest slivers. The main goal of this visualization is to provide a quick overview of the status of the main reservoirs in the state and how they compare to historical levels.

You can sort the mekko graph by size – largest at the top to smallest at the bottom – or by reservoir location, from north to south.

If you click on the “list” button in the top right of the dashboard, it will show a list of the reservoirs (in order of size from largest to smallest) and you can check which ones you would like to display. You can also share a custom URL by clicking the “Save URL” button which will put the custom URL into the URL bar of your browser which you can then copy and share. You can also use it to monitor only the reservoirs you are most interested in.

Units are in kaf, thousands of acre feet. 1 kaf is the amount of water that would cover 1 acre in one thousand feet of water (or 1000 acres in water in 1 foot of water). It is also the amount of water in a cube that is 352 feet per side (about the length of a football field). Shasta is very large and could hold about 3.5 cubic kilometers of water at full (but not flood) capacity.

Data and Tools
The data on water storage comes from the California Department of Water Resources’ (DWR) Data Exchange Center. Python is used to extract the data from this page hourly and wrangle the data in to a clean format. Visualization was done in javascript and specifically the D3.js visualization library. It was my first time using D3 and it took me a long time to get up to speed. It takes a fair amount of work to make graphs compared to other more plug-and-play libraries but its very customizable, which is a plus. It was the only tool that I could find that would allow me to make a vertical marimekko graph.

california reservoir levels dashboard

Speed and Kinetic Energy of Sports Pitches, Shots and Kicks

Posted In: Science | Sports

I’ve been playing (and watching) alot of soccer recently with the kids and it got me thinking about how hard the pros can kick the ball compared to us. This got me thinking about how much energy athletes can impart to a soccer ball and how that compares to balls and projectiles in other sports. This is not a scientific study, as I just googled the fastest pitch, shot, serve, kick, throw etc. from a variety of sports and the weight of the respective balls/projectiles to calculate their kinetic energy and momentum. I added in the stats for a (sort of) human projectile for comparison as well (Usain Bolt).

The graph is color coded so orange refers to projectiles that require no additional equipment, while the blue requires a bat or racket or club to aid in hitting the ball. You can toggle between log and linear scale on the x-axis to better see the differences between different projectiles.

The hammer throw is interesting because it far exceeds the kinetic energy and momentum of the other balls. If you watch a video of olympic hammer throws, you’ll see how much energy these very large, strong athletes are able to put into the throw. I think another aspect is that the top kinetic energy projectiles are all throws where there is significant acceleration of the projectile over a longer period of time rather than an instantaneous kick or hit.

Switching to the speed tab, all of the fastest projectiles are aided by equipment to achieve their very high speeds, but generally these projectiles have lower weights. This is also seen in the momentum tab, where the heavier projectiles are mostly unaided by equipment, probably because of the challenge of imparting enough momentum onto a heavy ball/projectile would require accelerating an even heavier racket/bat.

Equations and stuff

The equation for kinetic energy is \(E = {1\over2} mv^2\),
where E is kinetic energy (expressed in joules or kilojoules), m is mass and v is velocity (or speed).

The equation for momentum is \(P = mv\), where P is momentum.

The difference between momentum and kinetic energy is slightly tricky. The momentum rankings seem to prioritize the mass of the projectile while kinetic energy is a balance between speed (velocity) and mass. In kicking, throwing or hitting a ball/projectile, the player needs to put impart the energy into the ball. In a collision, total momentum of the system (player and ball) is conserved but kinetic energy is not, although total energy is (some energy may be “lost” as heat, sound, etc). In terms of being “hit” by the projectile, I believe that kinetic energy is probably more important than momentum for gauging the overall effect of the impact, but the total energy is not the only concern.The area over which the impact would occur is also important. Honestly, the table tennis (ping-pong) ball is the only one I think I’d be okay getting hit by (at least at these world record speeds).

Data sources and tools:
Mostly google for ball weights and trying to find some mention of the “fastest” throw or kick or whatever. Calculations are made using the equations above and plotted using Plot.ly javascript library.

College Admissions By State

Posted In: College



(more…)

Real Country Sizes Shown on Mercator Projection (Updated)

Posted In: Maps


Hover or click on a country to see how much it shrinks from the Mercator projection size.

I remember as a child thinking that Alaska was as large as 1/2 of the continental US. Later, however, I learned that while it is the largest state, it is actually only about 1/5 the size of the lower 48 states. My son has also remarked that Greenland is very big. And while it is very big, it’s nowhere near the size of the continent of Africa.

The map above shows the distortion in sizes of countries due to the mercator projection. Pressing on the button animates the country ‘shrinking’ to its actual size or ‘growing’ to the size shown on the mercator projection. It was inspired by a similar animation that I saw on reddit and decided I wanted to try to build the same thing.

The mercator projection is a commonly used projection on computer maps because it has perpendicular latitude and longitude lines (forming rectangles). It is formed by projecting the globe onto a cylinder A variant of the was adopted by Google maps, which helped establish it as the informal standard for web-based maps (although Google maps now also uses a globe view, instead of a map projection when zooming out to a very wide view).

Areas far from the equator are distorted in terms of their distances and are shown much larger than they actually are. This is one of the major issues with a projection of a globe onto a cylinder area. This is why Greenland, Russia and Canada shrink so much in height and width in the animation, they are fairly high in latitude in the Northern Hemisphere. Also important is that the closer you are to the poles, the more the distortion when a country is shown on the Mercator projection. Since longitude lines converge at the poles, but are parallel on a Mercator, the closer a part of a country is to the poles, the more that part will get stretched wider relative to a part of a country that is not as close to the poles. As a clear example, see what happens to the southern part of Australia, relative to the northern end. Similarly, the latitude lines also get further apart on a Mercator projection, while on a globe they stay equidistant. This means that the parts of countries that are nearer the poles will get taller, i.e. stretched out from a north-south perspective relative to parts of countries that are further from the poles. You can see this clearly in the northern ends of Russsia and Greenland, where the tops get smushed down.

This next graph shows each country plotted with their actual land area and apparent land area as shown on a Mercator projection. The further the countries are from the 1:1 line the greater the overestimate of their size from the Mercator (also color coded to be red). It is a logarithmic plot showing many different orders of magnitude in country size. The table also shows the top 10 countries whose size is overestimated (and the difference in land area in square kilometers or as a percentage reduction from the size in the Mercator projection).

As it shows, Greenland is the country that has the largest percent difference between its apparent size in a Mercator projection and it’s real size (it’s only about 1/4 of the apparent size). And Russia is the country with the largest absolute difference between these two sizes.

This is the original graph that keeps the shape of the countries exactly the same and just scales the size. This is incorrect because as you move towards the poles the distances between longitude lines decreases. As a result the tops (northern ends) of countries will shrink more than the bottoms (southern ends) of countries in the Northern Hemisphere and vice versa in the Southern Hemisphere.

Old map that changes sizes but incorrectly preserves the Mercator shape

mercator projection real size

Calculations:

I calculated the area in two ways, one assuming latitude and longitude are rectangular coordinates (i.e. Mercator projection) and the other was the actual area.

The new coordinates needed to draw the “real size” of the countries are derived by calculating the distance between the center of the country and each of the coordinates in the country’s shapefile. As you move towards the poles on a globe, the distance between longitude lines decreases as a function (cosine) of latitude. In a mercator projection, the longitude lines are shown as equi-distant regardless of latitude. In this calculation, we create a new set of coordinates by calculating the distance between the center of the polygon and each set of coordinates and change the coordinates to reflect the shrinking of distance between longitude lines as you head towards the poles.

In the previous version of this animation, I calculated the latitude and longitude coordinates for the outline of the “real” size by modifying the original latitude and longitude by the ratio of these two areas to draw the new smaller, “real” country size.

Data and tools: This visualization was made using the Leafletjs javascript mapping library and country shapefiles (converted to geojson).

Bitcoin Energy Consumption – Does It Consume More Electricity Than Your State?

Posted In: Energy | Money

This visualization looks at the staggeringly high energy use of Bitcoin and puts it into context: comparing it to electricity usage of US states. Unfortunately for Bitcoin, high energy usage is an intended feature of the system, rather than an unintended consequence. This is because mining is an increasingly energy intensive process, based upon increasingly computationally intensive calculations that are performed on high powered computers and graphical processing units.

Currently, 28 out of 50 states plus the District of Columbia all have lower electricity consumption than estimated annual bitcoin electricity consumption (~73 TWh per year). These states are highlighted in variations of yellow. This is approximately equal to the average annual electricity usage across all US States. States with higher electricity consumption than bitcoin are highlighted in shades of red.

When dividing the total energy use (73 TWh) by the current number of transactions (93 million), we get an average energy consumption of 783 kWh per transaction. Click on the “Energy per Transaction” button to see this visualization. What’s crazy is that a transaction is simply a transfer of bitcoin between “wallets”, recording the transaction, and a validation of the process. There’s no good reason why verifying digital transactions should take this much energy, except that it was built into the fundamental process of validating and mining bitcoin. 783 kWh is larger than the monthly per capita electricity consumption in 10 US states. It could also drive you and your family over 2000 miles in an electric car (e.g. Tesla Model S).

I’m not expert enough in this area to know how much more energy consumption will rise into the future, but if crypto advocates’ predictions come true and bitcoin is used extensively, millions of transactions will occur per hour instead of per year and the price of bitcoin may rise much higher than it currently is. If the price rises, then miners will be willing to expend more energy to “mine” the more valuable bitcoin. Needless to say, this sounds like a very bad idea from an energy consumption and sustainability standpoint.

Data and Tools:
State energy data comes from the US Department of Energy. Estimates of Bitcoin energy use come from Digiconomist’s Bitcoin Energy Consumption Index. The choropleth map is visualized using javascript and the Leaflet.js library with Open Street Map tiles.

bitcoin energy

Solar (Sun) Intensity By Location and Time

Posted In: Energy | Science

This visualization shows the amount of solar intensity (also called solar insolation and measured in watts per square meter) all across the globe as a function of time of day and day of year. This is an idealized calculation as it does not take into account reductions in solar intensity due to cloud cover or other things that might block the sun from reaching the earth (e.g dust and pollution).

As would be expected, the highest amount of solar intensity occurs on the globe right where the sun is overhead and as the angle of the sun lowers, the solar intensity declines. This is why the area around the equator and up through the tropics is so sunny, the sun is overhead here the most. If you click on the map you should see a popup of the intensity of sunlight at that location.

As the earth rotates over the course of a day, the angle of the sun changes and eventually the angle is so low, the sun is blocked by the horizon (this is sunset).

Instructions
  • The default is to show the sunlight intensity for the current date and time but you can change it by moving the sliders for hour or day.
  • You can also toggle between the orientation of the surface that you measure the sunlight on. The default shows the intensity of sunlight on a horizontal surface. The other option shows the intensity on a surface that is oriented to face the sun (i.e. perpendicular)

Again, the intensity will depend on the angle it makes with the sun and so it depends on your location on earth (i.e. latitude). Latitudes around the equator will receive more sunlight because their angle is closer to perpendicular.

Shifting through the days of the year, you can start to see the cause of the seasons as the amount of sunlight changes and more or less sunlight goes to each of the northern and southern hemispheres.

Calculations and Tools:
The calculations for solar intensity are based on equations from “Renewable and Efficient Electric Power Systems” by Gilbert Masters Chapter 7. Calculations were made using javascript and visualized using the Leaflet.js library with Open Street Map tiles.

This was a fun project for me to learn online mapping tools and programming.