Git Product home page Git Product logo

r-graph-catalog's Introduction

R Graph Catalog

The r-graph-catalog subdirectory of this repo creates the R Graph Catalog Shiny app.

This catalog is a complement to "Creating More Effective Graphs" by Naomi Robbins. All graphs were produced using the R language and the add-on package ggplot2, written by Hadley Wickham. The gallery is maintained by Joanna Zhao and Jennifer Bryan.

The initial work on this project was facilitated by an NSERC Undergraduate Student Research Award.

Inspiration

We are inspired by the R graph gallery and rCharts Gallery. Our goal is to create a simple and organized visual index of diverse ggplot2 graphs. Naomi Robbins' book provided a great set of figures to start with.

We are very interested in extending this catalog, possibly helping to revive to the dormant R graph gallery.

Useful Resources

"Creating More Effective Graphs" by Naomi Robbins

ggplot2 written by Hadley Wickham

Winston Chang's book "R Graphics Cookbook" and the Graphs section of his Cookbook for R website

ggplot2 tutorial from May 2014, Vancouver R Users Group

ggplot2 Version of Figures in "Lattice: Multivariate Data Visualization with R"

Contributing a figure

Ideally, this would be easier, but let's just see if anyone wants to contribute a figure before we worry about this too much!

  1. Fork this repository and pull to your local machine.
  2. Run make init to create your own figure directory under figures
  3. In the newly generated figure directory, read instuctions.md and make the appropriate changes.
  4. Make a single commit (include *.R, *_tags.txt, README-fodder.md, and data file (if any))
  5. Push back to your fork on GitHub.
  6. Make a pull request.

r-graph-catalog's People

Contributors

arfon avatar daattali avatar jzhaoo avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

r-graph-catalog's Issues

Make sure there's a clean example of basic plot types

I need to mine my own ggplot2 tutorial, for example:
https://github.com/jennybc/ggplot2-tutorial

This R Chart Chooser from 2012 is very good, but it doesn't help you get the plot and code in front of your eyeballs at same time:
http://www.yaksis.com/posts/r-chart-chooser.html

This ggplot2 cheat sheet is closer to what we've done here but focuses more on incremental changes to details and is formatted like a blog post vs. a clickable quilt:

http://zevross.com/blog/2014/08/04/beautiful-plotting-in-r-a-ggplot2-cheatsheet-3/

License to incorporate other languages/plotting packages ?

Hello, really nice project here!

I'm wondering whether the developers would be open to giving permission for this to be incorporated in a directory for other languages and packages? There's no LICENSE file, apologies if I've missed it somewhere - "We are very interested in extending this catalog" on the about page sounded promising so I thought I'd ask.

Thinking R (ggplot2), MATLAB, a select few of the many Python libraries (matplotlib / seaborn / ggplot / bokeh / vincent), Julia (Gadfly) etc.

Could be an interesting [potentially rather big] challenge but shouldn't be too difficult for any part individually, and would make it easier for people to move out of their comfort zones. The R catalog could make for a good set to replicate in these languages.

Example online, for a single bar chart: badhessian.org/2014/07/six-of-one-plot-half-dozen-of-the-other (R ggplot2, R base, Python matplotlib, Python seaborn, Julia Gadfly, and Plot.ly)

R Graph Catalog down?

Hi @jennybc
The link to launch R Graph Catalog doesn't appear to be working anymore. I believe I remembered you showing this during STAT 545 and I was hoping to show it to a grad module I'm teaching at UBC in September (BIOL 548L) so they can quickly get a glimpse of a whole bunch of different charts + code. Am I just missing something?
Thanks!
Melissa

Online version seems to be dead

Following the ubc stats link leads to the error

Error in shinyAppDir(x) : 
  No Shiny application exists at the path "/nfs/37zfs1-shiny-server/shiny-server/r-graph-catalog"
Calls: runApp ... as.shiny.appobj -> as.shiny.appobj.character -> shinyAppDir
Execution halted

I guess UBC people aren't hosting this anymore?

This site can’t be reached

Hi Jenny. Good day!

I have been trying to reach the R Graph Catalog website for the past couple of days and I get the following message:

This site can’t be reached

Any assistance would be greatly appreciated.

Thanks!

Make it possible to ignore a figure

Context: I'm using make init to add a few figures. The first one is taking a while to develop but the second one was easy. When I do make all, the code for the first figure is run, but throws an error. Of course I can fix the immediate problem by commenting out the code, but I suspect other downstream problems will follow.

Makes me realize we need a way to shut off processing for an entire figure (directory), while leaving what's there intact.

This seems related to the not doing tag, which seems to come into play quite late (perhaps only when preparing the app?). Better (= earlier) handling of that might be the solution.

tidyr instead of reshape2

So far, all the reshaping tasks I've encountered (I'm in chapter 4) look well within the capability of tidyr. Let's switch over to that instead of explicitly using reshape2. It's a friendlier package to present to people. (Of course, under the hood, reshape2 is still being used.)

create definitive source of various datasets

As I go through the figures, it's becoming clear that we need a single definitive source for several datasets.

Example: the museum visit length data from Fig 4.10 + others.

It needs to exist in one single location, probably in short and tall form.

This underscores how nice it would be to create a companion nbr or cmeg data package, even if it's data we have simulated that behaves like the original data we see in these figures.

Then, instead of copying the data around to multiple figure directories, we could just load it with a call to library(cmeg).

Side bonus: we could set factor levels sensibly.

Firefox problem

Received by @jennybc via email 2015-02-03:

I wrote this email just to say "Thank all of you" and remind you that the page may have a display bug under Firefox: Catalog is too wide to see the third column. It seems that some graphs like Fig 2.2 cannot zoom properly.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.