If you’re a Big Baller, you know when to stayeth in your lane but also when to switcheth lanes.
@LangstonKerman four score and seven years ago our fathers brought forth on this continent, a new lane to stayeth in—
MikeJackTzen (@MKJCKTZN) November 19, 2017
The Big Baller Brand brothers just inked a deal to play professional basketball in Europe. They switched into a different lane to achieve their original goal.
It's not about the money for the Ball Brothers. They have a passion to play Basketball and to experience playing as… twitter.com/i/web/status/9…—
Big Baller Brand (@bigballerbrand) December 12, 2017
The knee-jerk reaction from the non-globally minded is that this spells doom for any NBA hoop dreams. Not so.
MikeJackTzen (@MKJCKTZN) December 12, 2017
Four score and ten years ago, your only shot of making it to the NBA was usually through the NCAA. The NBA has adopted a global perspective. You see professionals from different continental leagues finding a way into the NBA. The 2016 to 2017 diagram is interesting, we’re seeing a darker edge from the NBA to the G-League. The NBA Players Association worked hard on installing ‘2 way contracts’ letting NBA players play in (and get paid in) both the NBA and the G-League, this was a great move, a no-brainer.
Options are great, but keep in mind that the NBA is the crème de la crème. You see the lightest edges enter the NBA node while you see many dark edges enter the ‘none’ node.
When I started making the above network plot of basketball league to league migrations, I looked into off the shelf R packages. There’s a fragmented handfull of R packages to do this. Kicker, none of them do directed edges the way I wanted.
If you’re an #rstats user and want to adopt the BigBallR philosophy, find multiple ways to achieve your goal.
I went back to the basics and hand rolled my own network plot with vanilla
ggplot2. At the end of the day, a network plot needs two things, nodes and edges, eg points (stored in
dat_nodes) and lines (stored in
dat_edges). Once you have your data in that format, you can make the network migration plot above, with the code snippet below
ggplot(data=dat_nodes,aes(X1,X2))+ geom_point(aes(size=10,label=league),show.legend = FALSE) + geom_curve(data=dat_edges, arrow=arrow(angle=30,length = unit(0.2, "inches")), alpha=0.03, aes(x=X1_send,y = X2_send, xend = X1_rec,yend = X2_rec) )
I hand-rolled the network diagram cuz the other packages didn’t have the custom features I needed. In my hand-rolled plot there is still one thing missing. I want to place the ‘arrow head’ along some other part of the curve (say the mid-point), other than the end-point. This is probably hard to do, since arrow() looks like it just needs the receiving coordinate and plops the arrow head there. For what I want, ggplot2 needs to know the desired placement-coordinates output from geom_curve(). So somehow, the internal curve calculations need to be returned in order to pass into arrow().