Git Product home page Git Product logo

rbitmoji's Introduction

RBitmoji: An R wrapper to the overly complicated Bitmoji API

CRAN_Status_Badge Travis-CI Build Status AppVeyor Build Status

Ya, this is happening…

Installation

You can (try to) install the development version of RBitmoji from GitHub using

if (!requireNamespace("devtools")) {
  install.packages("devtools")
}
devtools::install_github("bgreenwell/RBitmoji")

Obtaining your Bitmoji ID

In order to use RBitmoji you will need your unique Bitmoji ID, which can be difficult to find. Fortunately, the get_id() function can simplify the process! TO use this function, you must supply the email address associated with your Bitmoji account. You will then be prompted to enter your Bitmoji account password using a secure blah, blah, blah. For example:

library(RBitmoji)
my_id <- get_id("[email protected]")

If successful, your id will be stored in the variable my_id. Once that is done, you can use the plot_comic() function to do real data science.

Basic usage

If you are familiar with Bitmoji, then you know that there are hundreds of comics available for your avatar, each of which is associated with a comic id and a tag. As of right now, you can only look up and plot comics by tag, but in the future, we’ll add an id argument as well. Also, note that many comics are associated with multiple tags and vice versa, so use set.seed() for reproducibility. Below are some simple examples (the value of my_id was found using the get_id() function).

# Use set.seed() to generate the same comic everytime for a particular tag
set.seed(101)  # for reproducibility
my_id <- "1551b314-5e8a-4477-aca2-088c05963111-v1"
plot_comic(my_id, tag = "fail")

# Another example
plot_comic(my_id, tag = "time magazine")

# Some tags are associated with multiple comics
par(mfrow = c(2, 2))
for (i in 1:4) plot_comic(my_id, tag = "cool")

# Overlay comics on various plots
comic <- get_comic(my_id, tag = "volcano", transparent = TRUE)
library(ggplot2)

ggplot(iris, aes(x = Petal.Length, y = Petal.Width)) +
  geom_point(aes(color = Species)) +
  annotation_raster(comic, xmin = 1, xmax = 3, ymin = 1.5, ymax = 2.5)

# You have two ids, you can also plot comics with friends
set.seed(102)  # for reproducibility
plot_comic(c(my_id, my_id), tag = "vomit")
plot_comic(c(my_id, my_id), tag = "drink")

Inspirations

rbitmoji's People

Contributors

bgreenwell avatar oganm avatar

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.