

{"id":4225,"date":"2016-03-30T09:37:40","date_gmt":"2016-03-30T14:37:40","guid":{"rendered":"http:\/\/rud.is\/b\/?p=4225"},"modified":"2018-03-07T16:42:45","modified_gmt":"2018-03-07T21:42:45","slug":"introducing-a-weekly-r-python-js-etc-vis-challenge","status":"publish","type":"post","link":"https:\/\/rud.is\/b\/2016\/03\/30\/introducing-a-weekly-r-python-js-etc-vis-challenge\/","title":{"rendered":"Introducing a Weekly R \/ Python \/ JS \/ etc Vis Challenge!"},"content":{"rendered":"<p>>UPDATE: Deadline is now 2016-04-05 23:59 EDT; next vis challenge is 2016-04-06!<\/p>\n<p>Per a suggestion, I&#8217;m going to try to find a neat data set (prbly one from @jsvine) to feature each week and toss up some sample code (99% of the time prbly in R) and offer up a vis challenge. Just reply in the comments with a link to a gist\/repo\/rpub\/blog\/etc (or post directly, though inserting code requires some markup that you can ping me abt) post containing the code &#038; vis with a brief explanation. I&#8217;ll gather up everything into a new github organization I made for this context. You can also submit a PR right to [this week&#8217;s repo](https:\/\/github.com\/52vis\/2016-13).<\/p>\n<p>Winners get a free digital copy of [Data-Driven Security](http:\/\/amzn.to\/ddsec), and if you win more than once I&#8217;ll come up with other stuff to give away (either an Amazon gift card, a book or something Captain America related).<\/p>\n<p>Submissions should include a story\/angle\/question you were trying to answer, any notes or &#8220;gotchas&#8221; that the code\/comments doesn&#8217;t explain and a [beautiful] vis. You can use whatever language or tool (even Excel or _ugh_ Tableau), but you&#8217;ll have to describe what you did step-by-step for the GUI tools or record a video, since the main point about this contest is to help folks learn about asking questions, munging data and making visualizations. Excel &#038; Tableau lock that knowledge in and Tableau even locks that data in.<\/p>\n<p>### Droning on and on<\/p>\n<p>Today&#8217;s data source comes from this week&#8217;s Data Is Plural newsletter and is all about drones. @jsvine linked to the [main FAA site](http:\/\/www.faa.gov\/uas\/law_enforcement\/uas_sighting_reports\/) for drone sightings and there&#8217;s enough ways to slice the data that it should make for some interesting story angles.<\/p>\n<p>I will remove one of those angles with a simple bar chart of unmanned aircraft (UAS) sightings by week, using an FAA site color for the bars. I wanted to see if there were any overt visual patterns in the time of year or if the registration requirement at the end of 2015 caused any changes (I didn&#8217;t crunch the numbers to see if there were any actual patterns that could be found statistically, but that&#8217;s something y&#8217;all can do). I&#8217;m not curious as to what caused the &#8220;spike&#8221; in August\/September 2015 and the report text may have that data.<\/p>\n<p>I&#8217;ve put this week&#8217;s example code &#038; data into the [52 vis repo](https:\/\/github.com\/52vis\/2016-13) for this week.<\/p>\n<pre lang=\"rsplus\">library(ggplot2)\r\nlibrary(ggalt)\r\nlibrary(ggthemes)\r\nlibrary(readxl)\r\nlibrary(dplyr)\r\nlibrary(hrbrmisc)\r\nlibrary(grid)\r\n\r\n# get copies of the data locally\r\n\r\nURL1 <- \"http:\/\/www.faa.gov\/uas\/media\/UAS_Sightings_report_21Aug-31Jan.xlsx\"\r\nURL2 <- \"http:\/\/www.faa.gov\/uas\/media\/UASEventsNov2014-Aug2015.xls\"\r\n\r\nfil1 <- basename(URL1)\r\nfil2 <- basename(URL2)\r\n\r\nif (!file.exists(fil1)) download.file(URL1, fil1)\r\nif (!file.exists(fil2)) download.file(URL2, fil2)\r\n\r\n# read it in\r\n\r\nxl1 <- read_excel(fil1)\r\nxl2 <- read_excel(fil2)\r\n\r\n# munge it a bit so we can play with it by various calendrical options\r\n\r\ndrones <- setNames(bind_rows(xl2[,1:3],\r\n                             xl1[,c(1,3,4)]), \r\n                   c(\"ts\", \"city\", \"state\"))\r\ndrones <- mutate(drones, \r\n                 year=format(ts, \"%Y\"), \r\n                 year_mon=format(ts, \"%Y%m\"), \r\n                 ymd=as.Date(ts), \r\n                 yw=format(ts, \"%Y%V\"))\r\n\r\n# let's see them by week\r\nby_week <- mutate(count(drones, yw), wk=as.Date(sprintf(\"%s1\", yw), \"%Y%U%u\")-7)\r\n\r\n# this looks like bad data but I didn't investigate it too much\r\nby_week <- arrange(filter(by_week, wk>=as.Date(\"2014-11-10\")), wk)\r\n\r\n# plot\r\n\r\ngg <- ggplot(by_week, aes(wk, n))\r\ngg <- gg + geom_bar(stat=\"identity\", fill=\"#937206\")\r\ngg <- gg + annotate(\"text\", by_week$wk[1], 49, label=\"# reports\", \r\n                    hjust=0, vjust=1, family=\"Cabin-Italic\", size=3)\r\ngg <- gg + scale_x_date(expand=c(0,0))\r\ngg <- gg + scale_y_continuous(expand=c(0,0))\r\ngg <- gg + labs(y=NULL,\r\n                title=\"Weekly U.S. UAS (drone) sightings\",\r\n                subtitle=\"As reported to the Federal Aviation Administration\",\r\n                caption=\"Data from: http:\/\/www.faa.gov\/uas\/law_enforcement\/uas_sighting_reports\/\")\r\ngg <- gg + theme_hrbrmstr(grid=\"Y\", axis=\"X\")\r\ngg <- gg + theme(axis.title.x=element_text(margin=margin(t=-6)))\r\ngg<\/pre>\n<p><a href=\"https:\/\/i0.wp.com\/rud.is\/b\/wp-content\/uploads\/2016\/03\/RStudioScreenSnapz024.png?ssl=1\" rel=\"attachment wp-att-4226\"><img data-recalc-dims=\"1\" decoding=\"async\" data-attachment-id=\"4226\" data-permalink=\"https:\/\/rud.is\/b\/2016\/03\/30\/introducing-a-weekly-r-python-js-etc-vis-challenge\/rstudioscreensnapz024\/\" data-orig-file=\"https:\/\/i0.wp.com\/rud.is\/b\/wp-content\/uploads\/2016\/03\/RStudioScreenSnapz024.png?fit=1968%2C992&amp;ssl=1\" data-orig-size=\"1968,992\" data-comments-opened=\"1\" data-image-meta=\"{&quot;aperture&quot;:&quot;0&quot;,&quot;credit&quot;:&quot;&quot;,&quot;camera&quot;:&quot;&quot;,&quot;caption&quot;:&quot;&quot;,&quot;created_timestamp&quot;:&quot;0&quot;,&quot;copyright&quot;:&quot;&quot;,&quot;focal_length&quot;:&quot;0&quot;,&quot;iso&quot;:&quot;0&quot;,&quot;shutter_speed&quot;:&quot;0&quot;,&quot;title&quot;:&quot;&quot;,&quot;orientation&quot;:&quot;0&quot;}\" data-image-title=\"RStudioScreenSnapz024\" data-image-description=\"\" data-image-caption=\"\" data-large-file=\"https:\/\/i0.wp.com\/rud.is\/b\/wp-content\/uploads\/2016\/03\/RStudioScreenSnapz024.png?fit=510%2C257&amp;ssl=1\" src=\"https:\/\/i0.wp.com\/rud.is\/b\/wp-content\/uploads\/2016\/03\/RStudioScreenSnapz024.png?w=510&#038;ssl=1\" alt=\"RStudioScreenSnapz024\"  class=\"aligncenter size-full wp-image-4226\" \/><\/a><\/p>\n<p>### Fin<\/p>\n<p>I'll still keep up a weekly vis from the Data Is Plural weekly collection even if this whole contest thing doesn't take root with folks. You can never have too many examples for budding data folks to review.<\/p>\n","protected":false},"excerpt":{"rendered":"<p>>UPDATE: Deadline is now 2016-04-05 23:59 EDT; next vis challenge is 2016-04-06! Per a suggestion, I&#8217;m going to try to find a neat data set (prbly one from @jsvine) to feature each week and toss up some sample code (99% of the time prbly in R) and offer up a vis challenge. Just reply in [&hellip;]<\/p>\n","protected":false},"author":1,"featured_media":4226,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"jetpack_post_was_ever_published":false,"_jetpack_newsletter_access":"","_jetpack_dont_email_post_to_subs":false,"_jetpack_newsletter_tier_id":0,"_jetpack_memberships_contains_paywalled_content":false,"_jetpack_memberships_contains_paid_content":false,"activitypub_content_warning":"","activitypub_content_visibility":"","activitypub_max_image_attachments":3,"activitypub_interaction_policy_quote":"anyone","activitypub_status":"","footnotes":""},"categories":[24,678,764,673,674,753,91],"tags":[810,771],"class_list":["post-4225","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-charts-graphs","category-data-visualization","category-data-wrangling","category-datavis-2","category-dataviz","category-ggplot","category-r","tag-post","tag-viscontest"],"yoast_head":"<!-- This site is optimized with the Yoast SEO plugin v27.3 - https:\/\/yoast.com\/product\/yoast-seo-wordpress\/ -->\n<title>Introducing a Weekly R \/ Python \/ JS \/ etc Vis Challenge! - rud.is<\/title>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/rud.is\/b\/2016\/03\/30\/introducing-a-weekly-r-python-js-etc-vis-challenge\/\" \/>\n<meta property=\"og:locale\" content=\"en_US\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"Introducing a Weekly R \/ Python \/ JS \/ etc Vis Challenge! - rud.is\" \/>\n<meta property=\"og:description\" content=\"&gt;UPDATE: Deadline is now 2016-04-05 23:59 EDT; next vis challenge is 2016-04-06! Per a suggestion, I&#8217;m going to try to find a neat data set (prbly one from @jsvine) to feature each week and toss up some sample code (99% of the time prbly in R) and offer up a vis challenge. Just reply in [&hellip;]\" \/>\n<meta property=\"og:url\" content=\"https:\/\/rud.is\/b\/2016\/03\/30\/introducing-a-weekly-r-python-js-etc-vis-challenge\/\" \/>\n<meta property=\"og:site_name\" content=\"rud.is\" \/>\n<meta property=\"article:published_time\" content=\"2016-03-30T14:37:40+00:00\" \/>\n<meta property=\"article:modified_time\" content=\"2018-03-07T21:42:45+00:00\" \/>\n<meta property=\"og:image\" content=\"https:\/\/i0.wp.com\/rud.is\/b\/wp-content\/uploads\/2016\/03\/RStudioScreenSnapz024.png?fit=1968%2C992&ssl=1\" \/>\n\t<meta property=\"og:image:width\" content=\"1968\" \/>\n\t<meta property=\"og:image:height\" content=\"992\" \/>\n\t<meta property=\"og:image:type\" content=\"image\/png\" \/>\n<meta name=\"author\" content=\"hrbrmstr\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:label1\" content=\"Written by\" \/>\n\t<meta name=\"twitter:data1\" content=\"hrbrmstr\" \/>\n\t<meta name=\"twitter:label2\" content=\"Est. reading time\" \/>\n\t<meta name=\"twitter:data2\" content=\"2 minutes\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\\\/\\\/schema.org\",\"@graph\":[{\"@type\":\"Article\",\"@id\":\"https:\\\/\\\/rud.is\\\/b\\\/2016\\\/03\\\/30\\\/introducing-a-weekly-r-python-js-etc-vis-challenge\\\/#article\",\"isPartOf\":{\"@id\":\"https:\\\/\\\/rud.is\\\/b\\\/2016\\\/03\\\/30\\\/introducing-a-weekly-r-python-js-etc-vis-challenge\\\/\"},\"author\":{\"name\":\"hrbrmstr\",\"@id\":\"https:\\\/\\\/rud.is\\\/b\\\/#\\\/schema\\\/person\\\/d7cb7487ab0527447f7fda5c423ff886\"},\"headline\":\"Introducing a Weekly R \\\/ Python \\\/ JS \\\/ etc Vis Challenge!\",\"datePublished\":\"2016-03-30T14:37:40+00:00\",\"dateModified\":\"2018-03-07T21:42:45+00:00\",\"mainEntityOfPage\":{\"@id\":\"https:\\\/\\\/rud.is\\\/b\\\/2016\\\/03\\\/30\\\/introducing-a-weekly-r-python-js-etc-vis-challenge\\\/\"},\"wordCount\":490,\"commentCount\":21,\"publisher\":{\"@id\":\"https:\\\/\\\/rud.is\\\/b\\\/#\\\/schema\\\/person\\\/d7cb7487ab0527447f7fda5c423ff886\"},\"image\":{\"@id\":\"https:\\\/\\\/rud.is\\\/b\\\/2016\\\/03\\\/30\\\/introducing-a-weekly-r-python-js-etc-vis-challenge\\\/#primaryimage\"},\"thumbnailUrl\":\"https:\\\/\\\/i0.wp.com\\\/rud.is\\\/b\\\/wp-content\\\/uploads\\\/2016\\\/03\\\/RStudioScreenSnapz024.png?fit=1968%2C992&ssl=1\",\"keywords\":[\"post\",\"viscontest\"],\"articleSection\":[\"Charts &amp; Graphs\",\"Data Visualization\",\"data wrangling\",\"DataVis\",\"DataViz\",\"ggplot\",\"R\"],\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"CommentAction\",\"name\":\"Comment\",\"target\":[\"https:\\\/\\\/rud.is\\\/b\\\/2016\\\/03\\\/30\\\/introducing-a-weekly-r-python-js-etc-vis-challenge\\\/#respond\"]}]},{\"@type\":\"WebPage\",\"@id\":\"https:\\\/\\\/rud.is\\\/b\\\/2016\\\/03\\\/30\\\/introducing-a-weekly-r-python-js-etc-vis-challenge\\\/\",\"url\":\"https:\\\/\\\/rud.is\\\/b\\\/2016\\\/03\\\/30\\\/introducing-a-weekly-r-python-js-etc-vis-challenge\\\/\",\"name\":\"Introducing a Weekly R \\\/ Python \\\/ JS \\\/ etc Vis Challenge! - rud.is\",\"isPartOf\":{\"@id\":\"https:\\\/\\\/rud.is\\\/b\\\/#website\"},\"primaryImageOfPage\":{\"@id\":\"https:\\\/\\\/rud.is\\\/b\\\/2016\\\/03\\\/30\\\/introducing-a-weekly-r-python-js-etc-vis-challenge\\\/#primaryimage\"},\"image\":{\"@id\":\"https:\\\/\\\/rud.is\\\/b\\\/2016\\\/03\\\/30\\\/introducing-a-weekly-r-python-js-etc-vis-challenge\\\/#primaryimage\"},\"thumbnailUrl\":\"https:\\\/\\\/i0.wp.com\\\/rud.is\\\/b\\\/wp-content\\\/uploads\\\/2016\\\/03\\\/RStudioScreenSnapz024.png?fit=1968%2C992&ssl=1\",\"datePublished\":\"2016-03-30T14:37:40+00:00\",\"dateModified\":\"2018-03-07T21:42:45+00:00\",\"breadcrumb\":{\"@id\":\"https:\\\/\\\/rud.is\\\/b\\\/2016\\\/03\\\/30\\\/introducing-a-weekly-r-python-js-etc-vis-challenge\\\/#breadcrumb\"},\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\\\/\\\/rud.is\\\/b\\\/2016\\\/03\\\/30\\\/introducing-a-weekly-r-python-js-etc-vis-challenge\\\/\"]}]},{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\\\/\\\/rud.is\\\/b\\\/2016\\\/03\\\/30\\\/introducing-a-weekly-r-python-js-etc-vis-challenge\\\/#primaryimage\",\"url\":\"https:\\\/\\\/i0.wp.com\\\/rud.is\\\/b\\\/wp-content\\\/uploads\\\/2016\\\/03\\\/RStudioScreenSnapz024.png?fit=1968%2C992&ssl=1\",\"contentUrl\":\"https:\\\/\\\/i0.wp.com\\\/rud.is\\\/b\\\/wp-content\\\/uploads\\\/2016\\\/03\\\/RStudioScreenSnapz024.png?fit=1968%2C992&ssl=1\",\"width\":1968,\"height\":992},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\\\/\\\/rud.is\\\/b\\\/2016\\\/03\\\/30\\\/introducing-a-weekly-r-python-js-etc-vis-challenge\\\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Home\",\"item\":\"https:\\\/\\\/rud.is\\\/b\\\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Introducing a Weekly R \\\/ Python \\\/ JS \\\/ etc Vis Challenge!\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\\\/\\\/rud.is\\\/b\\\/#website\",\"url\":\"https:\\\/\\\/rud.is\\\/b\\\/\",\"name\":\"rud.is\",\"description\":\"&quot;In God we trust. All others must bring data&quot;\",\"publisher\":{\"@id\":\"https:\\\/\\\/rud.is\\\/b\\\/#\\\/schema\\\/person\\\/d7cb7487ab0527447f7fda5c423ff886\"},\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\\\/\\\/rud.is\\\/b\\\/?s={search_term_string}\"},\"query-input\":{\"@type\":\"PropertyValueSpecification\",\"valueRequired\":true,\"valueName\":\"search_term_string\"}}],\"inLanguage\":\"en-US\"},{\"@type\":[\"Person\",\"Organization\"],\"@id\":\"https:\\\/\\\/rud.is\\\/b\\\/#\\\/schema\\\/person\\\/d7cb7487ab0527447f7fda5c423ff886\",\"name\":\"hrbrmstr\",\"image\":{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\\\/\\\/i0.wp.com\\\/rud.is\\\/b\\\/wp-content\\\/uploads\\\/2023\\\/10\\\/ukr-shield.png?fit=460%2C460&ssl=1\",\"url\":\"https:\\\/\\\/i0.wp.com\\\/rud.is\\\/b\\\/wp-content\\\/uploads\\\/2023\\\/10\\\/ukr-shield.png?fit=460%2C460&ssl=1\",\"contentUrl\":\"https:\\\/\\\/i0.wp.com\\\/rud.is\\\/b\\\/wp-content\\\/uploads\\\/2023\\\/10\\\/ukr-shield.png?fit=460%2C460&ssl=1\",\"width\":460,\"height\":460,\"caption\":\"hrbrmstr\"},\"logo\":{\"@id\":\"https:\\\/\\\/i0.wp.com\\\/rud.is\\\/b\\\/wp-content\\\/uploads\\\/2023\\\/10\\\/ukr-shield.png?fit=460%2C460&ssl=1\"},\"description\":\"Don't look at me\u2026I do what he does \u2014 just slower. #rstats avuncular \u2022 ?Resistance Fighter \u2022 Cook \u2022 Christian \u2022 [Master] Chef des Donn\u00e9es de S\u00e9curit\u00e9 @ @rapid7\",\"sameAs\":[\"http:\\\/\\\/rud.is\"],\"url\":\"https:\\\/\\\/rud.is\\\/b\\\/author\\\/hrbrmstr\\\/\"}]}<\/script>\n<!-- \/ Yoast SEO plugin. -->","yoast_head_json":{"title":"Introducing a Weekly R \/ Python \/ JS \/ etc Vis Challenge! - rud.is","robots":{"index":"index","follow":"follow","max-snippet":"max-snippet:-1","max-image-preview":"max-image-preview:large","max-video-preview":"max-video-preview:-1"},"canonical":"https:\/\/rud.is\/b\/2016\/03\/30\/introducing-a-weekly-r-python-js-etc-vis-challenge\/","og_locale":"en_US","og_type":"article","og_title":"Introducing a Weekly R \/ Python \/ JS \/ etc Vis Challenge! - rud.is","og_description":">UPDATE: Deadline is now 2016-04-05 23:59 EDT; next vis challenge is 2016-04-06! Per a suggestion, I&#8217;m going to try to find a neat data set (prbly one from @jsvine) to feature each week and toss up some sample code (99% of the time prbly in R) and offer up a vis challenge. Just reply in [&hellip;]","og_url":"https:\/\/rud.is\/b\/2016\/03\/30\/introducing-a-weekly-r-python-js-etc-vis-challenge\/","og_site_name":"rud.is","article_published_time":"2016-03-30T14:37:40+00:00","article_modified_time":"2018-03-07T21:42:45+00:00","og_image":[{"width":1968,"height":992,"url":"https:\/\/i0.wp.com\/rud.is\/b\/wp-content\/uploads\/2016\/03\/RStudioScreenSnapz024.png?fit=1968%2C992&ssl=1","type":"image\/png"}],"author":"hrbrmstr","twitter_card":"summary_large_image","twitter_misc":{"Written by":"hrbrmstr","Est. reading time":"2 minutes"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"Article","@id":"https:\/\/rud.is\/b\/2016\/03\/30\/introducing-a-weekly-r-python-js-etc-vis-challenge\/#article","isPartOf":{"@id":"https:\/\/rud.is\/b\/2016\/03\/30\/introducing-a-weekly-r-python-js-etc-vis-challenge\/"},"author":{"name":"hrbrmstr","@id":"https:\/\/rud.is\/b\/#\/schema\/person\/d7cb7487ab0527447f7fda5c423ff886"},"headline":"Introducing a Weekly R \/ Python \/ JS \/ etc Vis Challenge!","datePublished":"2016-03-30T14:37:40+00:00","dateModified":"2018-03-07T21:42:45+00:00","mainEntityOfPage":{"@id":"https:\/\/rud.is\/b\/2016\/03\/30\/introducing-a-weekly-r-python-js-etc-vis-challenge\/"},"wordCount":490,"commentCount":21,"publisher":{"@id":"https:\/\/rud.is\/b\/#\/schema\/person\/d7cb7487ab0527447f7fda5c423ff886"},"image":{"@id":"https:\/\/rud.is\/b\/2016\/03\/30\/introducing-a-weekly-r-python-js-etc-vis-challenge\/#primaryimage"},"thumbnailUrl":"https:\/\/i0.wp.com\/rud.is\/b\/wp-content\/uploads\/2016\/03\/RStudioScreenSnapz024.png?fit=1968%2C992&ssl=1","keywords":["post","viscontest"],"articleSection":["Charts &amp; Graphs","Data Visualization","data wrangling","DataVis","DataViz","ggplot","R"],"inLanguage":"en-US","potentialAction":[{"@type":"CommentAction","name":"Comment","target":["https:\/\/rud.is\/b\/2016\/03\/30\/introducing-a-weekly-r-python-js-etc-vis-challenge\/#respond"]}]},{"@type":"WebPage","@id":"https:\/\/rud.is\/b\/2016\/03\/30\/introducing-a-weekly-r-python-js-etc-vis-challenge\/","url":"https:\/\/rud.is\/b\/2016\/03\/30\/introducing-a-weekly-r-python-js-etc-vis-challenge\/","name":"Introducing a Weekly R \/ Python \/ JS \/ etc Vis Challenge! - rud.is","isPartOf":{"@id":"https:\/\/rud.is\/b\/#website"},"primaryImageOfPage":{"@id":"https:\/\/rud.is\/b\/2016\/03\/30\/introducing-a-weekly-r-python-js-etc-vis-challenge\/#primaryimage"},"image":{"@id":"https:\/\/rud.is\/b\/2016\/03\/30\/introducing-a-weekly-r-python-js-etc-vis-challenge\/#primaryimage"},"thumbnailUrl":"https:\/\/i0.wp.com\/rud.is\/b\/wp-content\/uploads\/2016\/03\/RStudioScreenSnapz024.png?fit=1968%2C992&ssl=1","datePublished":"2016-03-30T14:37:40+00:00","dateModified":"2018-03-07T21:42:45+00:00","breadcrumb":{"@id":"https:\/\/rud.is\/b\/2016\/03\/30\/introducing-a-weekly-r-python-js-etc-vis-challenge\/#breadcrumb"},"inLanguage":"en-US","potentialAction":[{"@type":"ReadAction","target":["https:\/\/rud.is\/b\/2016\/03\/30\/introducing-a-weekly-r-python-js-etc-vis-challenge\/"]}]},{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/rud.is\/b\/2016\/03\/30\/introducing-a-weekly-r-python-js-etc-vis-challenge\/#primaryimage","url":"https:\/\/i0.wp.com\/rud.is\/b\/wp-content\/uploads\/2016\/03\/RStudioScreenSnapz024.png?fit=1968%2C992&ssl=1","contentUrl":"https:\/\/i0.wp.com\/rud.is\/b\/wp-content\/uploads\/2016\/03\/RStudioScreenSnapz024.png?fit=1968%2C992&ssl=1","width":1968,"height":992},{"@type":"BreadcrumbList","@id":"https:\/\/rud.is\/b\/2016\/03\/30\/introducing-a-weekly-r-python-js-etc-vis-challenge\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"https:\/\/rud.is\/b\/"},{"@type":"ListItem","position":2,"name":"Introducing a Weekly R \/ Python \/ JS \/ etc Vis Challenge!"}]},{"@type":"WebSite","@id":"https:\/\/rud.is\/b\/#website","url":"https:\/\/rud.is\/b\/","name":"rud.is","description":"&quot;In God we trust. All others must bring data&quot;","publisher":{"@id":"https:\/\/rud.is\/b\/#\/schema\/person\/d7cb7487ab0527447f7fda5c423ff886"},"potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/rud.is\/b\/?s={search_term_string}"},"query-input":{"@type":"PropertyValueSpecification","valueRequired":true,"valueName":"search_term_string"}}],"inLanguage":"en-US"},{"@type":["Person","Organization"],"@id":"https:\/\/rud.is\/b\/#\/schema\/person\/d7cb7487ab0527447f7fda5c423ff886","name":"hrbrmstr","image":{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/i0.wp.com\/rud.is\/b\/wp-content\/uploads\/2023\/10\/ukr-shield.png?fit=460%2C460&ssl=1","url":"https:\/\/i0.wp.com\/rud.is\/b\/wp-content\/uploads\/2023\/10\/ukr-shield.png?fit=460%2C460&ssl=1","contentUrl":"https:\/\/i0.wp.com\/rud.is\/b\/wp-content\/uploads\/2023\/10\/ukr-shield.png?fit=460%2C460&ssl=1","width":460,"height":460,"caption":"hrbrmstr"},"logo":{"@id":"https:\/\/i0.wp.com\/rud.is\/b\/wp-content\/uploads\/2023\/10\/ukr-shield.png?fit=460%2C460&ssl=1"},"description":"Don't look at me\u2026I do what he does \u2014 just slower. #rstats avuncular \u2022 ?Resistance Fighter \u2022 Cook \u2022 Christian \u2022 [Master] Chef des Donn\u00e9es de S\u00e9curit\u00e9 @ @rapid7","sameAs":["http:\/\/rud.is"],"url":"https:\/\/rud.is\/b\/author\/hrbrmstr\/"}]}},"jetpack_featured_media_url":"https:\/\/i0.wp.com\/rud.is\/b\/wp-content\/uploads\/2016\/03\/RStudioScreenSnapz024.png?fit=1968%2C992&ssl=1","jetpack_shortlink":"https:\/\/wp.me\/p23idr-169","jetpack_likes_enabled":true,"jetpack-related-posts":[{"id":4242,"url":"https:\/\/rud.is\/b\/2016\/04\/06\/52vis-week-2-2016-week-14-honing-in-on-the-homeless\/","url_meta":{"origin":4225,"position":0},"title":"52Vis Week 2 (2016 Week #14) &#8211; Honing in on the Homeless","author":"hrbrmstr","date":"2016-04-06","format":false,"excerpt":">UPDATE: Since I put in a \"pull request\" requirement, I intended to put in a link to getting started with GitHub. Dr. Jenny Bryan's @stat545 has a great [section on git](https:\/\/stat545-ubc.github.io\/git00_index.html) that should hopefully make it a bit less painful. ### Why 52Vis? In case folks are wondering why I'm\u2026","rel":"","context":"In &quot;Charts &amp; Graphs&quot;","block_context":{"text":"Charts &amp; Graphs","link":"https:\/\/rud.is\/b\/category\/charts-graphs\/"},"img":{"alt_text":"","src":"https:\/\/i0.wp.com\/rud.is\/b\/wp-content\/uploads\/2016\/04\/percapita.png?fit=800%2C1200&ssl=1&resize=350%2C200","width":350,"height":200,"srcset":"https:\/\/i0.wp.com\/rud.is\/b\/wp-content\/uploads\/2016\/04\/percapita.png?fit=800%2C1200&ssl=1&resize=350%2C200 1x, https:\/\/i0.wp.com\/rud.is\/b\/wp-content\/uploads\/2016\/04\/percapita.png?fit=800%2C1200&ssl=1&resize=525%2C300 1.5x, https:\/\/i0.wp.com\/rud.is\/b\/wp-content\/uploads\/2016\/04\/percapita.png?fit=800%2C1200&ssl=1&resize=700%2C400 2x"},"classes":[]},{"id":4292,"url":"https:\/\/rud.is\/b\/2016\/04\/13\/52-vis-week-1-winners\/","url_meta":{"origin":4225,"position":1},"title":"52 Vis Week 1 Winners!","author":"hrbrmstr","date":"2016-04-13","format":false,"excerpt":"The response to 52Vis has exceeded expectations and there have been great entries for both weeks. It's time to award some prizes! ### Week 1 - Send in the Drones I'll take [this week](https:\/\/github.com\/52vis\/2016-13) in comment submission order (remember, the rules changed to submission via PR in Week 2). NOTE:\u2026","rel":"","context":"In &quot;52vis&quot;","block_context":{"text":"52vis","link":"https:\/\/rud.is\/b\/category\/52vis\/"},"img":{"alt_text":"","src":"","width":0,"height":0},"classes":[]},{"id":4335,"url":"https:\/\/rud.is\/b\/2016\/04\/13\/52vis-week-3-waste-not-want-not\/","url_meta":{"origin":4225,"position":2},"title":"52Vis Week #3 &#8211; Waste Not, Want Not","author":"hrbrmstr","date":"2016-04-13","format":false,"excerpt":"The Wall Street Journal did a project piece [a while back](http:\/\/projects.wsj.com\/waste-lands\/) in the _\"Waste Lands: America's Forgotten Nuclear Legacy\"_. They dug through [Department of Energy](http:\/\/www.lm.doe.gov\/default.aspx?id=2602) and [CDC](http:\/\/www.cdc.gov\/niosh\/ocas\/ocasawe.html) data to provide an overview of the lingering residue of this toxic time in America's past (somehow, I have to believe the fracking\u2026","rel":"","context":"In &quot;52vis&quot;","block_context":{"text":"52vis","link":"https:\/\/rud.is\/b\/category\/52vis\/"},"img":{"alt_text":"","src":"https:\/\/i0.wp.com\/rud.is\/b\/wp-content\/uploads\/2016\/04\/waste.png?fit=1200%2C983&ssl=1&resize=350%2C200","width":350,"height":200,"srcset":"https:\/\/i0.wp.com\/rud.is\/b\/wp-content\/uploads\/2016\/04\/waste.png?fit=1200%2C983&ssl=1&resize=350%2C200 1x, https:\/\/i0.wp.com\/rud.is\/b\/wp-content\/uploads\/2016\/04\/waste.png?fit=1200%2C983&ssl=1&resize=525%2C300 1.5x, https:\/\/i0.wp.com\/rud.is\/b\/wp-content\/uploads\/2016\/04\/waste.png?fit=1200%2C983&ssl=1&resize=700%2C400 2x, https:\/\/i0.wp.com\/rud.is\/b\/wp-content\/uploads\/2016\/04\/waste.png?fit=1200%2C983&ssl=1&resize=1050%2C600 3x"},"classes":[]},{"id":4308,"url":"https:\/\/rud.is\/b\/2016\/04\/13\/52-vis-week-2-wrap-up\/","url_meta":{"origin":4225,"position":3},"title":"52 Vis Week #2 Wrap Up","author":"hrbrmstr","date":"2016-04-13","format":false,"excerpt":"I've been staring at this homeless data set for a few weeks now since I'm using it both here and in the data science class I'm teaching. It's been one of the most mindful data sets I've worked with in a while. Even when reduced to pure numbers in named\u2026","rel":"","context":"In &quot;52vis&quot;","block_context":{"text":"52vis","link":"https:\/\/rud.is\/b\/category\/52vis\/"},"img":{"alt_text":"","src":"","width":0,"height":0},"classes":[]},{"id":2949,"url":"https:\/\/rud.is\/b\/2014\/04\/01\/mapping-the-march-2014-california-earthquake-with-ggmap\/","url_meta":{"origin":4225,"position":4},"title":"Mapping the March 2014 California Earthquake with ggmap","author":"hrbrmstr","date":"2014-04-01","format":false,"excerpt":"I had no intention to blog this, but @jayjacobs convinced me otherwise. I was curious about the recent (end of March, 2014) [California earthquake](http:\/\/www.latimes.com\/local\/lanow\/la-me-ln-an-estimated-17-million-people-felt-51-earthquake-in-california-20140331,0,2465821.story#axzz2xfGBteq0) \"storm\" and did a quick plot for \"fun\" and personal use using `ggmap`\/`ggplot`. I used data from the [Southern California Earthquake Center](http:\/\/www.data.scec.org\/recent\/recenteqs\/Maps\/Los_Angeles.html) (that I cleaned up\u2026","rel":"","context":"In &quot;Data Visualization&quot;","block_context":{"text":"Data Visualization","link":"https:\/\/rud.is\/b\/category\/data-visualization\/"},"img":{"alt_text":"","src":"","width":0,"height":0},"classes":[]},{"id":4449,"url":"https:\/\/rud.is\/b\/2016\/06\/16\/your-data-vis-spidey-sense-the-need-for-a-robust-utility-belt\/","url_meta":{"origin":4225,"position":5},"title":"Your data vis &#8220;Spidey-sense&#8221; &#038; the need for a robust &#8220;utility belt&#8221;","author":"hrbrmstr","date":"2016-06-16","format":false,"excerpt":"@theboysmithy did a [great piece](http:\/\/www.ft.com\/intl\/cms\/s\/0\/6f777c84-322b-11e6-ad39-3fee5ffe5b5b.html) on coming up with an alternate view for a timeline for an FT piece. Here's an excerpt (read the whole piece, though, it's worth it): Here is an example from a story recently featured in the FT: emerging- market populations are expected to age more\u2026","rel":"","context":"In &quot;d3&quot;","block_context":{"text":"d3","link":"https:\/\/rud.is\/b\/category\/d3\/"},"img":{"alt_text":"","src":"https:\/\/i0.wp.com\/rud.is\/b\/wp-content\/uploads\/2016\/06\/RStudio.png?fit=1200%2C642&ssl=1&resize=350%2C200","width":350,"height":200,"srcset":"https:\/\/i0.wp.com\/rud.is\/b\/wp-content\/uploads\/2016\/06\/RStudio.png?fit=1200%2C642&ssl=1&resize=350%2C200 1x, https:\/\/i0.wp.com\/rud.is\/b\/wp-content\/uploads\/2016\/06\/RStudio.png?fit=1200%2C642&ssl=1&resize=525%2C300 1.5x, https:\/\/i0.wp.com\/rud.is\/b\/wp-content\/uploads\/2016\/06\/RStudio.png?fit=1200%2C642&ssl=1&resize=700%2C400 2x, https:\/\/i0.wp.com\/rud.is\/b\/wp-content\/uploads\/2016\/06\/RStudio.png?fit=1200%2C642&ssl=1&resize=1050%2C600 3x"},"classes":[]}],"jetpack_sharing_enabled":true,"_links":{"self":[{"href":"https:\/\/rud.is\/b\/wp-json\/wp\/v2\/posts\/4225","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/rud.is\/b\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/rud.is\/b\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/rud.is\/b\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/rud.is\/b\/wp-json\/wp\/v2\/comments?post=4225"}],"version-history":[{"count":0,"href":"https:\/\/rud.is\/b\/wp-json\/wp\/v2\/posts\/4225\/revisions"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/rud.is\/b\/wp-json\/wp\/v2\/media\/4226"}],"wp:attachment":[{"href":"https:\/\/rud.is\/b\/wp-json\/wp\/v2\/media?parent=4225"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/rud.is\/b\/wp-json\/wp\/v2\/categories?post=4225"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/rud.is\/b\/wp-json\/wp\/v2\/tags?post=4225"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}