Code Monkey home page Code Monkey logo

ggthemes's Introduction

R-CMD-check Code Coverage Status rstudio mirror downloads CRAN status lifecycle

Some extra geoms, scales, and themes for ggplot.

Install

To install the stable version from CRAN,

install.packages('ggthemes', dependencies = TRUE)

Or, to install the development version from github, use the devtools package,

library("devtools")
install_github(c("hadley/ggplot2", "jrnold/ggthemes"))

How to use

For a quick tutorial, check out Rafael Irizarry’s book.

Examples

library("ggplot2")
library("ggthemes")

mtcars2 <- within(mtcars, {
  vs <- factor(vs, labels = c("V-shaped", "Straight"))
  am <- factor(am, labels = c("Automatic", "Manual"))
  cyl  <- factor(cyl)
  gear <- factor(gear)
})

p1 <- ggplot(mtcars2) +
  geom_point(aes(x = wt, y = mpg, colour = gear)) +
  labs(
    title = "Fuel economy declines as weight increases",
    subtitle = "(1973-74)",
    caption = "Data from the 1974 Motor Trend US magazine.",
    x = "Weight (1000 lbs)",
    y = "Fuel economy (mpg)",
    colour = "Gears"
  )
p1 +
  scale_color_calc() +
  theme_calc()

p1 + theme_clean()

p1 + theme_economist() +
  scale_colour_economist()

p1 + theme_excel() +
  scale_colour_excel()

p1 + theme_excel_new() +
  scale_colour_excel_new()

p1 + theme_igray()

p1 + theme_par()

p1 + theme_fivethirtyeight()

p1 + theme_few() +
  scale_colour_few()

p1 + theme_solarized() +
  scale_colour_solarized()

p1 + theme_solarized(light=FALSE) +
  scale_colour_solarized()

p1 + theme_solid()

p1 + theme_tufte()

p1 + theme_wsj(base_size = 8) + scale_color_wsj()

p1 + scale_color_colorblind()

p1 + scale_color_tableau()

ggthemes's People

Contributors

agosiewska avatar almartin82 avatar bowerth avatar btj01 avatar daroczig avatar dennybiasiolli avatar ellienakothompson avatar flying-sheep avatar fracek avatar hadley avatar hmalmedal avatar hrbrmstr avatar imagejan avatar jbkunst avatar jdagilliland avatar jmlondon avatar joelcarlson avatar jrnold avatar kayleedavisgithub avatar konradzdeb avatar michaelchirico avatar mnel avatar onesandzeroes avatar ph-roc avatar sandymuspratt avatar svenski avatar teunbrand avatar vadimus202 avatar weitzner 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  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

ggthemes's Issues

facet labels are cut

For example, look at the facet labels in:

ggplot(iris, aes(Sepal.Length, fill = Species)) +
geom_density() +
facet_wrap(~Species, ncol = 1) +
theme_wsj()

Weird result with scale_tufte

Hi

I've tried to use scale_x_tufte() on a dot plot. I've got a really weird result.

For my example, I generate a random dataframe :

library(ggplot2)
library(magrittr)
library(ggthemes)
library(scales)
library(gridExtra)
set.seed(1234)
N <- 5
df <- data.frame(x = runif(N), y = letters[1:10])

The maximum value for x is 0.86 :

> df$x %>% max()
[1] 0.8609154

When I draw a simple plot without specifying the scale for the x axis, I've got a good result :

plot1 <- df %>% 
ggplot() + 
  geom_point(mapping = aes(x = x, y = reorder(y,x))) + 
  ggtitle("Simple plot")
plot1

When I add scale_x_tufte() with option labels = percent_format(), I've got a wrong result setting the highest value to 100% instead of 86%

plot2 <- plot1 + 
  scale_x_tufte(labels = percent_format()) + 
  ggtitle("Scale X Tufte")

I can solve the problem by adding the limits parameter to scale_x_tufte()

plot3 <- plot1 + 
  scale_x_tufte(labels = percent_format(), limits = c(0,1)) + 
  ggtitle("Scale X Tufte + Limits")

scale_x_tufte

The default behaviour of scale_x_tufte() may lead many users to make wrong graphs.

See my gist file to replicate this error : scale_tufte.R

> R.version
               _                           
platform       x86_64-pc-linux-gnu         
arch           x86_64                      
os             linux-gnu                   
system         x86_64, linux-gnu           
status                                      
major          3                           
minor          2.2                         
year           2015                        
month          08                          
day            14                          
svn rev        69053                       
language       R                           
version.string R version 3.2.2 (2015-08-14)
nickname       Fire Safety    

Error in eval(expr, envir, enclos) : could not find function "eval". ggphylo, ggplot

When installing ggphylo using githubinstall I get the following error. I've tried installing the latest version of ggplot from CRAN and github but the error persists.

 `> githubinstall('gjuggler/ggphylo')
Suggestion:
 - gjuggler/ggphylo  Phylogenetic plots for R and ggplot
Do you want to install the package (Y/n)?  y
Downloading GitHub repo gjuggler/ggphylo@master
from URL https://api.github.com/repos/gjuggler/ggphylo/zipball/master
Installing ggphylo
"C:/PROGRA~1/R/R-32~1.2/bin/x64/R" --no-site-file --no-environ --no-save --no-restore --quiet CMD  INSTALL  \
  "C:/Users/Francisco/AppData/Local/Temp/RtmpOAP5Si/devtools2fd032474d9b/gjuggler-ggphylo-745eb49"  \
  --library="C:/Users/Francisco/Documents/R/win-library/3.2" --install-tests 

* installing *source* package 'ggphylo' ...
** R
** inst
** preparing package for lazy loading
Warning: package 'ape' was built under R version 3.2.5
Warning: package 'ggplot2' was built under R version 3.2.5
Warning: package 'gridExtra' was built under R version 3.2.5
Warning: package 'proto' was built under R version 3.2.5
Warning: package 'plyr' was built under R version 3.2.5
Error in eval(expr, envir, enclos) : could not find function "eval"
Error : unable to load R code in package 'ggphylo'
ERROR: lazy loading failed for package 'ggphylo'
* removing 'C:/Users/Francisco/Documents/R/win-library/3.2/ggphylo'
Error: Command failed (1)`

Failed to install

Hello!

Thank you for this great library!

However, I've tried to install it today, but the installation process failed.

Here's the complete log:

> install.packages('ggthemes', dependencies = TRUE)
Installing package into ‘/home/sfomin/R/x86_64-pc-linux-gnu-library/3.2’
(as ‘lib’ is unspecified)
also installing the dependencies ‘NMF’, ‘igraph’, ‘htmltools’, ‘tibble’, ‘lintr’, ‘pander’, ‘rmarkdown’

--2016-11-17 23:13:50--  https://cran.rstudio.com/src/contrib/NMF_0.20.6.tar.gz
Resolving cran.rstudio.com (cran.rstudio.com)... 52.85.240.181
Connecting to cran.rstudio.com (cran.rstudio.com)|52.85.240.181|:443... connected.
HTTP request sent, awaiting response... 200 OK
Length: 1764466 (1,7M) [application/x-gzip]
Saving to: ‘/tmp/RtmpgSigSo/downloaded_packages/NMF_0.20.6.tar.gz’

     0K .......... .......... .......... .......... ..........  2% 2,01M 1s
    50K .......... .......... .......... .......... ..........  5% 3,00M 1s
   100K .......... .......... .......... .......... ..........  8% 7,89M 0s
   150K .......... .......... .......... .......... .......... 11% 8,83M 0s
   200K .......... .......... .......... .......... .......... 14% 3,86M 0s
   250K .......... .......... .......... .......... .......... 17% 6,52M 0s
   300K .......... .......... .......... .......... .......... 20% 6,02M 0s
   350K .......... .......... .......... .......... .......... 23% 4,71M 0s
   400K .......... .......... .......... .......... .......... 26% 6,93M 0s
   450K .......... .......... .......... .......... .......... 29% 6,35M 0s
   500K .......... .......... .......... .......... .......... 31% 6,76M 0s
   550K .......... .......... .......... .......... .......... 34% 6,94M 0s
   600K .......... .......... .......... .......... .......... 37% 6,42M 0s
   650K .......... .......... .......... .......... .......... 40% 7,64M 0s
   700K .......... .......... .......... .......... .......... 43% 7,14M 0s
   750K .......... .......... .......... .......... .......... 46% 7,14M 0s
   800K .......... .......... .......... .......... .......... 49% 5,63M 0s
   850K .......... .......... .......... .......... .......... 52% 7,54M 0s
   900K .......... .......... .......... .......... .......... 55% 7,53M 0s
   950K .......... .......... .......... .......... .......... 58% 7,49M 0s
  1000K .......... .......... .......... .......... .......... 60% 7,96M 0s
  1050K .......... .......... .......... .......... .......... 63% 8,77M 0s
  1100K .......... .......... .......... .......... .......... 66% 7,60M 0s
  1150K .......... .......... .......... .......... .......... 69% 8,47M 0s
  1200K .......... .......... .......... .......... .......... 72% 6,28M 0s
  1250K .......... .......... .......... .......... .......... 75% 8,60M 0s
  1300K .......... .......... .......... .......... .......... 78% 8,06M 0s
  1350K .......... .......... .......... .......... .......... 81% 8,76M 0s
  1400K .......... .......... .......... .......... .......... 84% 9,10M 0s
  1450K .......... .......... .......... .......... .......... 87% 9,10M 0s
  1500K .......... .......... .......... .......... .......... 89% 8,19M 0s
  1550K .......... .......... .......... .......... .......... 92% 9,21M 0s
  1600K .......... .......... .......... .......... .......... 95% 7,38M 0s
  1650K .......... .......... .......... .......... .......... 98% 9,92M 0s
  1700K .......... .......... ...                             100% 15,9M=0,3s

2016-11-17 23:13:51 (6,48 MB/s) - ‘/tmp/RtmpgSigSo/downloaded_packages/NMF_0.20.6.tar.gz’ saved [1764466/1764466]

--2016-11-17 23:13:51--  https://cran.rstudio.com/src/contrib/igraph_1.0.1.tar.gz
Resolving cran.rstudio.com (cran.rstudio.com)... 52.222.159.237
Connecting to cran.rstudio.com (cran.rstudio.com)|52.222.159.237|:443... connected.
HTTP request sent, awaiting response... 200 OK
Length: 3328353 (3,2M) [application/x-gzip]
Saving to: ‘/tmp/RtmpgSigSo/downloaded_packages/igraph_1.0.1.tar.gz’

     0K .......... .......... .......... .......... ..........  1%  646K 5s
    50K .......... .......... .......... .......... ..........  3% 1,05M 4s
   100K .......... .......... .......... .......... ..........  4% 2,71M 3s
   150K .......... .......... .......... .......... ..........  6% 4,00M 2s
   200K .......... .......... .......... .......... ..........  7% 1,70M 2s
   250K .......... .......... .......... .......... ..........  9% 4,72M 2s
   300K .......... .......... .......... .......... .......... 10% 5,21M 2s
   350K .......... .......... .......... .......... .......... 12% 3,91M 2s
   400K .......... .......... .......... .......... .......... 13% 1,81M 2s
   450K .......... .......... .......... .......... .......... 15% 3,86M 1s
   500K .......... .......... .......... .......... .......... 16% 4,18M 1s
   550K .......... .......... .......... .......... .......... 18% 4,57M 1s
   600K .......... .......... .......... .......... .......... 19% 4,19M 1s
   650K .......... .......... .......... .......... .......... 21% 2,94M 1s
   700K .......... .......... .......... .......... .......... 23% 3,04M 1s
   750K .......... .......... .......... .......... .......... 24% 4,02M 1s
   800K .......... .......... .......... .......... .......... 26% 3,97M 1s
   850K .......... .......... .......... .......... .......... 27% 4,44M 1s
   900K .......... .......... .......... .......... .......... 29% 3,91M 1s
   950K .......... .......... .......... .......... .......... 30% 3,77M 1s
  1000K .......... .......... .......... .......... .......... 32% 4,26M 1s
  1050K .......... .......... .......... .......... .......... 33% 2,81M 1s
  1100K .......... .......... .......... .......... .......... 35% 9,36M 1s
  1150K .......... .......... .......... .......... .......... 36% 3,05M 1s
  1200K .......... .......... .......... .......... .......... 38% 3,99M 1s
  1250K .......... .......... .......... .......... .......... 39% 4,79M 1s
  1300K .......... .......... .......... .......... .......... 41% 4,80M 1s
  1350K .......... .......... .......... .......... .......... 43% 3,07M 1s
  1400K .......... .......... .......... .......... .......... 44% 4,89M 1s
  1450K .......... .......... .......... .......... .......... 46% 4,99M 1s
  1500K .......... .......... .......... .......... .......... 47% 4,86M 1s
  1550K .......... .......... .......... .......... .......... 49% 3,57M 1s
  1600K .......... .......... .......... .......... .......... 50% 3,50M 1s
  1650K .......... .......... .......... .......... .......... 52% 5,40M 0s
  1700K .......... .......... .......... .......... .......... 53% 5,12M 0s
  1750K .......... .......... .......... .......... .......... 55% 4,80M 0s
  1800K .......... .......... .......... .......... .......... 56% 3,77M 0s
  1850K .......... .......... .......... .......... .......... 58% 5,14M 0s
  1900K .......... .......... .......... .......... .......... 59% 5,82M 0s
  1950K .......... .......... .......... .......... .......... 61% 4,57M 0s
  2000K .......... .......... .......... .......... .......... 63% 5,69M 0s
  2050K .......... .......... .......... .......... .......... 64% 5,56M 0s
  2100K .......... .......... .......... .......... .......... 66% 4,25M 0s
  2150K .......... .......... .......... .......... .......... 67% 5,59M 0s
  2200K .......... .......... .......... .......... .......... 69% 5,99M 0s
  2250K .......... .......... .......... .......... .......... 70% 5,61M 0s
  2300K .......... .......... .......... .......... .......... 72% 6,40M 0s
  2350K .......... .......... .......... .......... .......... 73% 4,73M 0s
  2400K .......... .......... .......... .......... .......... 75% 5,27M 0s
  2450K .......... .......... .......... .......... .......... 76% 5,52M 0s
  2500K .......... .......... .......... .......... .......... 78% 6,11M 0s
  2550K .......... .......... .......... .......... .......... 79% 6,57M 0s
  2600K .......... .......... .......... .......... .......... 81% 5,97M 0s
  2650K .......... .......... .......... .......... .......... 83% 6,15M 0s
  2700K .......... .......... .......... .......... .......... 84% 6,62M 0s
  2750K .......... .......... .......... .......... .......... 86% 4,51M 0s
  2800K .......... .......... .......... .......... .......... 87% 5,96M 0s
  2850K .......... .......... .......... .......... .......... 89% 7,36M 0s
  2900K .......... .......... .......... .......... .......... 90% 6,44M 0s
  2950K .......... .......... .......... .......... .......... 92% 6,13M 0s
  3000K .......... .......... .......... .......... .......... 93% 6,11M 0s
  3050K .......... .......... .......... .......... .......... 95% 6,17M 0s
  3100K .......... .......... .......... .......... .......... 96% 6,24M 0s
  3150K .......... .......... .......... .......... .......... 98% 5,13M 0s
  3200K .......... .......... .......... .......... .......... 99% 8,84M 0s
  3250K                                                       100%  658G=0,8s

2016-11-17 23:13:52 (3,88 MB/s) - ‘/tmp/RtmpgSigSo/downloaded_packages/igraph_1.0.1.tar.gz’ saved [3328353/3328353]

--2016-11-17 23:13:52--  https://cran.rstudio.com/src/contrib/htmltools_0.3.5.tar.gz
Resolving cran.rstudio.com (cran.rstudio.com)... 52.222.159.237
Connecting to cran.rstudio.com (cran.rstudio.com)|52.222.159.237|:443... connected.
HTTP request sent, awaiting response... 200 OK
Length: 44048 (43K) [application/x-gzip]
Saving to: ‘/tmp/RtmpgSigSo/downloaded_packages/htmltools_0.3.5.tar.gz’

     0K .......... .......... .......... .......... ...       100%  779K=0,06s

2016-11-17 23:13:53 (779 KB/s) - ‘/tmp/RtmpgSigSo/downloaded_packages/htmltools_0.3.5.tar.gz’ saved [44048/44048]

--2016-11-17 23:13:53--  https://cran.rstudio.com/src/contrib/tibble_1.2.tar.gz
Resolving cran.rstudio.com (cran.rstudio.com)... 52.222.159.237
Connecting to cran.rstudio.com (cran.rstudio.com)|52.222.159.237|:443... connected.
HTTP request sent, awaiting response... 200 OK
Length: 54517 (53K) [application/x-gzip]
Saving to: ‘/tmp/RtmpgSigSo/downloaded_packages/tibble_1.2.tar.gz’

     0K .......... .......... .......... .......... .......... 93%  790K 0s
    50K ...                                                   100% 6178G=0,06s

2016-11-17 23:13:53 (841 KB/s) - ‘/tmp/RtmpgSigSo/downloaded_packages/tibble_1.2.tar.gz’ saved [54517/54517]

--2016-11-17 23:13:53--  https://cran.rstudio.com/src/contrib/lintr_1.0.0.tar.gz
Resolving cran.rstudio.com (cran.rstudio.com)... 52.222.159.237
Connecting to cran.rstudio.com (cran.rstudio.com)|52.222.159.237|:443... connected.
HTTP request sent, awaiting response... 200 OK
Length: 51014 (50K) [application/x-gzip]
Saving to: ‘/tmp/RtmpgSigSo/downloaded_packages/lintr_1.0.0.tar.gz’

     0K .......... .......... .......... .......... ......... 100%  176K=0,3s

2016-11-17 23:13:54 (176 KB/s) - ‘/tmp/RtmpgSigSo/downloaded_packages/lintr_1.0.0.tar.gz’ saved [51014/51014]

--2016-11-17 23:13:54--  https://cran.rstudio.com/src/contrib/pander_0.6.0.tar.gz
Resolving cran.rstudio.com (cran.rstudio.com)... 52.222.159.237
Connecting to cran.rstudio.com (cran.rstudio.com)|52.222.159.237|:443... connected.
HTTP request sent, awaiting response... 200 OK
Length: 376681 (368K) [application/x-gzip]
Saving to: ‘/tmp/RtmpgSigSo/downloaded_packages/pander_0.6.0.tar.gz’

     0K .......... .......... .......... .......... .......... 13%  683K 0s
    50K .......... .......... .......... .......... .......... 27% 2,55M 0s
   100K .......... .......... .......... .......... .......... 40% 1,09M 0s
   150K .......... .......... .......... .......... .......... 54% 3,50M 0s
   200K .......... .......... .......... .......... .......... 67% 1,68M 0s
   250K .......... .......... .......... .......... .......... 81% 4,55M 0s
   300K .......... .......... .......... .......... .......... 95% 6,41M 0s
   350K .......... .......                                    100% 12,8M=0,2s

2016-11-17 23:13:55 (1,80 MB/s) - ‘/tmp/RtmpgSigSo/downloaded_packages/pander_0.6.0.tar.gz’ saved [376681/376681]

--2016-11-17 23:13:55--  https://cran.rstudio.com/src/contrib/rmarkdown_1.1.tar.gz
Resolving cran.rstudio.com (cran.rstudio.com)... 52.222.172.34
Connecting to cran.rstudio.com (cran.rstudio.com)|52.222.172.34|:443... connected.
HTTP request sent, awaiting response... 200 OK
Length: 2065151 (2,0M) [application/x-gzip]
Saving to: ‘/tmp/RtmpgSigSo/downloaded_packages/rmarkdown_1.1.tar.gz’

     0K .......... .......... .......... .......... ..........  2%  725K 3s
    50K .......... .......... .......... .......... ..........  4% 1,05M 2s
   100K .......... .......... .......... .......... ..........  7% 2,66M 2s
   150K .......... .......... .......... .......... ..........  9% 3,58M 1s
   200K .......... .......... .......... .......... .......... 12% 1,99M 1s
   250K .......... .......... .......... .......... .......... 14% 3,96M 1s
   300K .......... .......... .......... .......... .......... 17% 5,63M 1s
   350K .......... .......... .......... .......... .......... 19% 5,58M 1s
   400K .......... .......... .......... .......... .......... 22% 7,38M 1s
   450K .......... .......... .......... .......... .......... 24% 2,39M 1s
   500K .......... .......... .......... .......... .......... 27% 4,79M 1s
   550K .......... .......... .......... .......... .......... 29% 10,7M 1s
   600K .......... .......... .......... .......... .......... 32% 10,9M 1s
   650K .......... .......... .......... .......... .......... 34% 11,7M 0s
   700K .......... .......... .......... .......... .......... 37% 11,8M 0s
   750K .......... .......... .......... .......... .......... 39% 7,70M 0s
   800K .......... .......... .......... .......... .......... 42% 8,73M 0s
   850K .......... .......... .......... .......... .......... 44% 3,54M 0s
   900K .......... .......... .......... .......... .......... 47% 3,83M 0s
   950K .......... .......... .......... .......... .......... 49% 7,92M 0s
  1000K .......... .......... .......... .......... .......... 52% 7,38M 0s
  1050K .......... .......... .......... .......... .......... 54% 8,31M 0s
  1100K .......... .......... .......... .......... .......... 57% 7,55M 0s
  1150K .......... .......... .......... .......... .......... 59% 6,07M 0s
  1200K .......... .......... .......... .......... .......... 61% 8,45M 0s
  1250K .......... .......... .......... .......... .......... 64% 8,50M 0s
  1300K .......... .......... .......... .......... .......... 66% 7,88M 0s
  1350K .......... .......... .......... .......... .......... 69% 5,18M 0s
  1400K .......... .......... .......... .......... .......... 71% 9,31M 0s
  1450K .......... .......... .......... .......... .......... 74% 8,68M 0s
  1500K .......... .......... .......... .......... .......... 76% 8,25M 0s
  1550K .......... .......... .......... .......... .......... 79% 5,86M 0s
  1600K .......... .......... .......... .......... .......... 81% 5,18M 0s
  1650K .......... .......... .......... .......... .......... 84% 25,1M 0s
  1700K .......... .......... .......... .......... .......... 86% 9,27M 0s
  1750K .......... .......... .......... .......... .......... 89% 9,10M 0s
  1800K .......... .......... .......... .......... .......... 91% 5,39M 0s
  1850K .......... .......... .......... .......... .......... 94% 8,57M 0s
  1900K .......... .......... .......... .......... .......... 96% 8,52M 0s
  1950K .......... .......... .......... .......... .......... 99% 6,96M 0s
  2000K .......... ......                                     100%  350M=0,4s

2016-11-17 23:13:55 (4,58 MB/s) - ‘/tmp/RtmpgSigSo/downloaded_packages/rmarkdown_1.1.tar.gz’ saved [2065151/2065151]

--2016-11-17 23:13:55--  https://cran.rstudio.com/src/contrib/ggthemes_3.2.0.tar.gz
Resolving cran.rstudio.com (cran.rstudio.com)... 52.85.240.181
Connecting to cran.rstudio.com (cran.rstudio.com)|52.85.240.181|:443... connected.
HTTP request sent, awaiting response... 200 OK
Length: 721033 (704K) [application/x-gzip]
Saving to: ‘/tmp/RtmpgSigSo/downloaded_packages/ggthemes_3.2.0.tar.gz’

     0K .......... .......... .......... .......... ..........  7%  148K 4s
    50K .......... .......... .......... .......... .......... 14%  225K 3s
   100K .......... .......... .......... .......... .......... 21%  438K 2s
   150K .......... .......... .......... .......... .......... 28%  226K 2s
   200K .......... .......... .......... .......... .......... 35%  406K 2s
   250K .......... .......... .......... .......... .......... 42%  482K 2s
   300K .......... .......... .......... .......... .......... 49%  433K 1s
   350K .......... .......... .......... .......... .......... 56%  466K 1s
   400K .......... .......... .......... .......... .......... 63%  443K 1s
   450K .......... .......... .......... .......... .......... 71%  490K 1s
   500K .......... .......... .......... .......... .......... 78% 2,95M 0s
   550K .......... .......... .......... .......... .......... 85%  456K 0s
   600K .......... .......... .......... .......... .......... 92% 3,41M 0s
   650K .......... .......... .......... .......... .......... 99%  517K 0s
   700K ....                                                  100%  109M=1,8s

2016-11-17 23:13:58 (392 KB/s) - ‘/tmp/RtmpgSigSo/downloaded_packages/ggthemes_3.2.0.tar.gz’ saved [721033/721033]

* installing *source* package ‘NMF’ ...
** package ‘NMF’ successfully unpacked and MD5 sums checked
** libs
g++ -I/usr/share/R/include -DNDEBUG      -fpic  -g -O2 -fstack-protector-strong -Wformat -Werror=format-security -Wdate-time -D_FORTIFY_SOURCE=2 -g  -c distance.cpp -o distance.o
g++ -I/usr/share/R/include -DNDEBUG      -fpic  -g -O2 -fstack-protector-strong -Wformat -Werror=format-security -Wdate-time -D_FORTIFY_SOURCE=2 -g  -c divergence.cpp -o divergence.o
g++ -I/usr/share/R/include -DNDEBUG      -fpic  -g -O2 -fstack-protector-strong -Wformat -Werror=format-security -Wdate-time -D_FORTIFY_SOURCE=2 -g  -c euclidean.cpp -o euclidean.o
g++ -I/usr/share/R/include -DNDEBUG      -fpic  -g -O2 -fstack-protector-strong -Wformat -Werror=format-security -Wdate-time -D_FORTIFY_SOURCE=2 -g  -c utils.cpp -o utils.o
g++ -shared -L/usr/lib/R/lib -Wl,-Bsymbolic-functions -Wl,-z,relro -o NMF.so distance.o divergence.o euclidean.o utils.o -L/usr/lib/R/lib -lR
installing to /home/sfomin/R/x86_64-pc-linux-gnu-library/3.2/NMF/libs
** R
** data
** demo
** inst
** preparing package for lazy loading
Warning: S3 methods ‘.DollarNames.C++Object’, ‘.DollarNames.Module’, ‘print.bytes’ were declared in NAMESPACE but not found
Error in library.dynam(lib, package, package.lib) : 
  shared object ‘Rcpp.so’ not found
ERROR: lazy loading failed for package ‘NMF’
* removing ‘/home/sfomin/R/x86_64-pc-linux-gnu-library/3.2/NMF’
Warning in install.packages :
  installation of package ‘NMF’ had non-zero exit status
* installing *source* package ‘htmltools’ ...
** package ‘htmltools’ successfully unpacked and MD5 sums checked
** libs
g++ -I/usr/share/R/include -DNDEBUG   -I"/home/sfomin/R/x86_64-pc-linux-gnu-library/3.2/Rcpp/include"   -fpic  -g -O2 -fstack-protector-strong -Wformat -Werror=format-security -Wdate-time -D_FORTIFY_SOURCE=2 -g  -c RcppExports.cpp -o RcppExports.o
RcppExports.cpp:4:18: fatal error: Rcpp.h: No such file or directory
compilation terminated.
/usr/lib/R/etc/Makeconf:143: recipe for target 'RcppExports.o' failed
make: *** [RcppExports.o] Error 1
ERROR: compilation failed for package ‘htmltools’
* removing ‘/home/sfomin/R/x86_64-pc-linux-gnu-library/3.2/htmltools’
Warning in install.packages :
  installation of package ‘htmltools’ had non-zero exit status
* installing *source* package ‘tibble’ ...
** package ‘tibble’ successfully unpacked and MD5 sums checked
** libs
g++ -I/usr/share/R/include -DNDEBUG   -I"/home/sfomin/R/x86_64-pc-linux-gnu-library/3.2/Rcpp/include"   -fpic  -g -O2 -fstack-protector-strong -Wformat -Werror=format-security -Wdate-time -D_FORTIFY_SOURCE=2 -g  -c RcppExports.cpp -o RcppExports.o
RcppExports.cpp:4:18: fatal error: Rcpp.h: No such file or directory
compilation terminated.
/usr/lib/R/etc/Makeconf:143: recipe for target 'RcppExports.o' failed
make: *** [RcppExports.o] Error 1
ERROR: compilation failed for package ‘tibble’
* removing ‘/home/sfomin/R/x86_64-pc-linux-gnu-library/3.2/tibble’
Warning in install.packages :
  installation of package ‘tibble’ had non-zero exit status
* installing *source* package ‘pander’ ...
** package ‘pander’ successfully unpacked and MD5 sums checked
** libs
g++ -I/usr/share/R/include -DNDEBUG   -I"/home/sfomin/R/x86_64-pc-linux-gnu-library/3.2/Rcpp/include"   -fpic  -g -O2 -fstack-protector-strong -Wformat -Werror=format-security -Wdate-time -D_FORTIFY_SOURCE=2 -g  -c RcppExports.cpp -o RcppExports.o
RcppExports.cpp:4:18: fatal error: Rcpp.h: No such file or directory
compilation terminated.
/usr/lib/R/etc/Makeconf:143: recipe for target 'RcppExports.o' failed
make: *** [RcppExports.o] Error 1
ERROR: compilation failed for package ‘pander’
* removing ‘/home/sfomin/R/x86_64-pc-linux-gnu-library/3.2/pander’
Warning in install.packages :
  installation of package ‘pander’ had non-zero exit status
* installing *source* package ‘ggthemes’ ...
** package ‘ggthemes’ successfully unpacked and MD5 sums checked
** R
** inst
** preparing package for lazy loading
Warning: S3 methods ‘.DollarNames.C++Object’, ‘.DollarNames.Module’, ‘print.bytes’ were declared in NAMESPACE but not found
Error in library.dynam(lib, package, package.lib) : 
  shared object ‘Rcpp.so’ not found
ERROR: lazy loading failed for package ‘ggthemes’
* removing ‘/home/sfomin/R/x86_64-pc-linux-gnu-library/3.2/ggthemes’
Warning in install.packages :
  installation of package ‘ggthemes’ had non-zero exit status
ERROR: dependency ‘NMF’ is not available for package ‘igraph’
* removing ‘/home/sfomin/R/x86_64-pc-linux-gnu-library/3.2/igraph’
Warning in install.packages :
  installation of package ‘igraph’ had non-zero exit status
ERROR: dependencies ‘htmltools’, ‘tibble’ are not available for package ‘rmarkdown’
* removing ‘/home/sfomin/R/x86_64-pc-linux-gnu-library/3.2/rmarkdown’
Warning in install.packages :
  installation of package ‘rmarkdown’ had non-zero exit status
ERROR: dependency ‘igraph’ is not available for package ‘lintr’
* removing ‘/home/sfomin/R/x86_64-pc-linux-gnu-library/3.2/lintr’
Warning in install.packages :
  installation of package ‘lintr’ had non-zero exit status

The downloaded source packages are in
	‘/tmp/RtmpgSigSo/downloaded_packages’

What could be the problem? Thanks!

Error in eval(expr, envir, enclos) : could not find function "eval"

Trying to build @hadley's ggplot2 book. It requires ggthemes. Installing ggthemes yields an issue with eval. Any suggestion for me? (Presume the warnings are related to the previous issue.)

> install.packages("ggthemes")
Installing package into '/Users/jowens/Library/R'
(as 'lib' is unspecified)
trying URL 'http://cran.cnr.Berkeley.edu/src/contrib/ggthemes_2.2.1.tar.gz'
Content type 'application/x-gzip' length 433489 bytes (423 KB)
==================================================
downloaded 423 KB

* installing *source* package 'ggthemes' ...
** package 'ggthemes' successfully unpacked and MD5 sums checked
** R
** inst
** preparing package for lazy loading
Warning: replacing previous import by 'grid::arrow' when loading 'ggthemes'
Warning: replacing previous import by 'grid::unit' when loading 'ggthemes'
Warning: replacing previous import by 'scales::alpha' when loading 'ggthemes'
Error in eval(expr, envir, enclos) : could not find function "eval"
Error : unable to load R code in package 'ggthemes'
ERROR: lazy loading failed for package 'ggthemes'
* removing '/Users/jowens/Library/R/ggthemes'
mission-burrito 9662$ R

R version 3.2.1 (2015-06-18) -- "World-Famous Astronaut"
Copyright (C) 2015 The R Foundation for Statistical Computing
Platform: x86_64-apple-darwin14.4.0 (64-bit)

installation fails on windows

Using Windows 7 and 64bit R (tried both 2.14 and 2.15)

after

library('devtools')
install_github("ggthemes", "jrnold")

I get the following error

* checking for file 'C:\Users\Thomas Vladeck\AppData\Local\Temp\RtmpCSFgag\jrnold-ggthemes-60ed668/DESCRIPTION' ... OK
* preparing 'ggthemes':
* checking DESCRIPTION meta-information ... OK
* installing the package to process help pages
* saving partial Rd database
* checking for LF line-endings in source and make files
* checking for empty or unneeded directories
Removed empty directory 'ggthemes/stata'
* building 'ggthemes_1.0.1.tar.gz'
 ERROR
packaging into .tar.gz failed
Error: Command failed (1)
In addition: Warning message:
running command '"C:/PROGRA~1/R/R-214~1.1/bin/x64/R" CMD build "C:\Users\Thomas Vladeck\AppData\Local\Temp\RtmpCSFgag\jrnold-ggthemes-60ed668" --no-manual --no-vignettes' had status 1 

Add ylab to fivethirtyeight ggtheme?

Is it possible to add a label to the y axis if you are using themefivethirtyeight? I tried ylab but it does not work:

library(ggplot2)
library(ggthemes)
p2 <- ggplot(mtcars, aes(x = wt, y = mpg, colour = factor(gear))) +
  geom_point() +
  ggtitle("Cars")
p2 + geom_smooth(method = "lm", se = FALSE) +
  scale_color_fivethirtyeight("cyl") +
  theme_fivethirtyeight() + ylab('SOMETHING')

Thanks!

PS: I asked this question in stackoverflow.

scale_colour with many levels

Do any of the scale_colour_ options in this plot work for factors with many levels? I can't seem to get it.

mtcars$id <- 1:nrow(mtcars)
qplot(wt, mpg, data = mtcars, colour = factor(id)) + scale_colour_discrete(guide = F)

image

qplot(wt, mpg, data = mtcars, colour = factor(id)) + scale_colour_hc(guide = F)

image

Continuous value error on scale_fill_fivethirtyeight()

Hi, thanks for the great package. Came across a Error: Continuous value supplied to discrete scale error when trying to use scale_fill_fivethirtyeight() on a df with only string and integer values. scale_fill_viridis() works like charm.

WSJ Theme Font Error

While running theme_wsj on a windows box I get the following error.

Warning messages:
1: In grid.Call(L_textBounds, as.graphicsAnnot(x$label), x$x, x$y, :
Font family not found in Windows font database
2: In grid.Call.graphics(L_text, as.graphicsAnnot(x$label), x$x, x$y, :
Font family not found in Windows font database
Warning messages:
1: In grid.Call.graphics(L_text, as.graphicsAnnot(x$label), x$x, x$y, :
Font family not found in Windows font database
2: In grid.Call.graphics(L_text, as.graphicsAnnot(x$label), x$x, x$y, :
Font family not found in Windows font database

axis.ticks.margin deprecated in latest ggplot2 version

Have been running into this error quite a bit: "axis.ticks.marginis deprecated. Please setmarginproperty ofaxis.text` instead"

Installation of ggplot2 is 1.0.1.9003, so might only be an issue when running the devtools installation of ggplot2 (devtools::install_github("hadley/ggplot2")?

Additions to theme_tufte(). And more actively suggesting the use of extrafont

Proposed changes

  1. Make Gill Sans the base font
  2. Add axis-lines; Tufte doesn't necessarily advocate the removal of all lines (see References
  3. Add some vertical spacing in axis titles

I realize #1 is the most problematic. Given that extrafont is a fairly stable library at this point, and is a suggested requirement for ggthemes, maybe it's worth it to include a helper function that throws a warning/suggestion if extrafont isn't installed. And if it is installed, then use the choose_font() functionality. The assumption here is that many users of ggthemes are already looking for convenience of packaged design, and typography is an essential enough component that it's worth actively suggesting the dependency of extrafont.

The main drawback, besides the extra dependency, is the user having to then run font_import(). Perhaps that could be implemented as a helper function too, to wrap up the library install and font import at some point during the first use of ggthemes...

Set up the data and libraries

This is setup just to run my example, not necessarily for the end-user:

library(dplyr)
library(httr)
library(extrafont)
font_import() # if first time running extrafont

library(ggthemes)
# via http://zevross.com/blog/2014/08/04/beautiful-plotting-in-r-a-ggplot2-cheatsheet-3/
DATA_URL <- 'http://zevross.com/blog/wp-content/uploads/2014/08/chicago-nmmaps.csv'
dat <- content(GET(DATA_URL))

Credit: Data and examples modified from Zevross's excellent ggplot2 cheat sheet

Set up the plot

tuftePal <- c("#990033", "#367a37", "#cc6600", "#333333")
g <- ggplot(dat, aes(o3, temp, color = factor(season))) +
     geom_point() +
     labs(x = "Ozone",  y = "Temperature (F)") +
     scale_colour_manual(name = "Seasons", values = tuftePal)

Current theme_tufte()

g + theme_tufte() + ggtitle('Current theme_tufte()')

current theme_tufte()

Adding extrafont library check

is.extrafont.installed <- function(){
  if(is.element("extrafont", installed.packages()[,1])){
    library(extrafont)
    # probably need something here to run font_import()
    return(T)
  }else{
    warning("Library extrafont installed; using system sans/serif libraries as fallback fonts. 
    To enable full font support, run: 
      install.packages('extrafont') 
      font_import()")
    return(F)
  }
}

Defining theme_tufte_revised()

# set font
base_font_family_tufte <- function(){
  if(is.extrafont.installed()){
    library(extrafont)
    tuftefont <- choose_font(c("Gill Sans MT", "Gill Sans", "GillSans", "Verdana", "serif"), quiet = FALSE)  
  }else{
    tuftefont <- "serif"
  }
  return(tuftefont)
}

theme_tufte_revised <- function(base_size = 11, base_family = base_font_family_tufte(), ticks = TRUE) {

  ret <- theme_bw(base_family = base_family, base_size = base_size) + 
    theme(
          axis.line = element_line(color = 'black'),
          axis.title.x = element_text(vjust = -0.3), 
          axis.title.y = element_text(vjust = 0.8),
          legend.background = element_blank(), 
          legend.key = element_blank(), 
          legend.title = element_text(face="plain"),
          panel.background = element_blank(), 
          panel.border = element_blank(),
          panel.grid = element_blank(),
          plot.background = element_blank(),
          strip.background = element_blank()
    )

  if (!ticks) {
    ret <- ret + theme(axis.ticks = element_blank())
  }

  ret
} 
g + theme_tufte_revised() + ggtitle('Revised theme_tufte()')

theme_tufte_revised()

References

The Visual Display of Quantitative Information:

"Redesign of the Bar Chart/Histogram", p.128

Still, a thin baseline looks good

img

What's your font? (RIP aaronsw):

The display font is Gill Sans, a classic and elegant sans serif font. Gill designed several excellent fonts, which are widely available. In addition to the display font at this website, I use Gill sans a few places in Enivisioning Information and in Visual Explantions.

Also: Chartjunk

Suppression of axis labels

Thanks for these super neat themes. Small suggestion:

p = ggplot(iris, aes(Sepal.Width, Sepal.Length)) + geom_point(); p
p + theme_fivethirtyeight() + labs(x = 'Width', h = 'Length')
p + theme_wsj() + labs(x = 'Width', h = 'Length')

Is it possible to re-enable axis labels if they're specified?

theme_foundation not working with ggplot2 v2.0.0

my old custom themes stopped working when I upgraded to ggplot2 v2.0.0, suspect the trouble is within theme_foundation

here is a simple example:
theme_cust <- function (base_size = 12, base_family = "sans")
{
ggthemes::theme_foundation(base_size = base_size, base_family = base_family) +
ggplot2::theme(
panel.border = element_rect(fill = NA, color = "red", linetype = "solid", size = 2))
}

theme_cust2 <- function (base_size = 12, base_family = "sans")
{
ggplot2::theme_grey(base_size = base_size, base_family = base_family) %+replace%
ggplot2::theme(
panel.border = element_rect(fill = NA, color = "red", linetype = "solid", size = 2))
}

p <- ggplot(iris, aes(Species, Sepal.Length)) +
geom_boxplot()
p + theme_cust() # error
p + theme_cust2() # fine

thanks

Error: Don't know how to add scale_colour_stata() to a theme object

For:

ggplot(data=svmdata_ls,aes(x=k, y=gap, group=2)) + 
       geom_line(colour="blue", size=1.5) + #geom_point(size=4, shape=21) +
       geom_line(data=svmdata,aes(x=k, y=gap, group=1 ), colour="red", size=1.5) +
       xlim(0, max(svmdata$k)) +
       ylim(0, y_max) +
       #theme(plot.background=element_rect(fill="darkseagreen"))
       theme_stata() + scale_colour_stata()

I get:

theme_stata() + scale_colour_stata()
Error: Don't know how to add scale_colour_stata() to a theme object

Any idea why is that?

base_size in theme_wsj does nothing

base_size in theme_wsj is an unused variable - I'm guessing that's not intentional. I changed the line:

 text = element_text(colour = "black", family = base_family),

to

 text = element_text(colour = "black", family = base_family,size = base_size),

which seems to work as I would expect.
R

base collor (for bars , points, etc) does not change without color or fill options

Hey, awesome package.

(Maybe this is a general ggplot2 question, not a ggthemes one, but lets see:)

Is there a way to change the "default" color of graph content (bars, lines, points) when there is only one category being ploted, so the fill or color options are not present ?

For example:

d <- data.frame(
  Ano=2000+5*0:10,
  A=factor("a"),
  Pop =c(6.1,6.5,6.9,7.3,7.7,8.0,8.3,8.6,8.9,9.1,9.3)
)

# plot1
d %>% ggplot(aes(x=Ano, y=Populacao       )) + geom_bar(stat="identity") +
  theme_economist()

# plot2
d %>% ggplot(aes(x=Ano, y=Populacao,fill=A)) + geom_bar(stat="identity") +
  theme_economist()

above, in plot1 the color of the bars is the ggplot2 defaul (grey).

In plot2 the collor follow the collor palette, but with the disadvantage of adding a legend (which, of course, can be excluded with other commands)
In any case, adding a fill argument to a graph that has only one category will not be intuitive to users

Passing Options

  1. Great package, love it! My favourite has to be theme_excel() 👍
  2. You can pass, say, theme_wsj(20) in a manner analogous to theme_bw(20), but this doesn't work for theme_stata() because base_size is the second option. I suggest changing that so one can type theme_stata(20) without having to think too hard. Thanks!

Namespace heads up

In the next version of ggplot2, I import and re-export scales::alpha(), grid::unit() and grid::arrow(). Because you're importing all of those namespaces, that gives:

library(ggthemes)
#> Warning: replacing previous import by 'grid::arrow' when loading 'ggthemes'
#> Warning: replacing previous import by 'grid::unit' when loading 'ggthemes'
#> Warning: replacing previous import by 'scales::alpha' when loading
#> 'ggthemes'

Panel.margin and legend.margin deprecated in ggplot2 2.2.0

Hi

Great package, thanks!

After updating to ggplot2 2.2.0 I get following warnings when using theme_economist_white()
Warning messages:
1: panel.margin is deprecated. Please use panel.spacing property instead
2: legend.margin must be specified using margin(). For the old behavior use legend.spacing

ggplot(mpg, aes(hwy))+geom_density()+theme_economist_white() recreates the warnings

geom_tufteboxplot doesn't dodge appropriately when an aesthetic is a factor

I have some code that I wrote a year or two ago that uses geom_tufteboxplot(), with a colour aesthetic that is a factor. Here is an example of what I want, using the mpg dataset:

p <- ggplot(mpg, aes(class, hwy))
p + geom_tufteboxplot(aes(colour = drv))

When I wrote my code a couple years ago, the above code would have produced multiple color-coded Tufte-style boxplots at each x location, and the boxplots would have been "dodged" so that they are not plotted on top of one another. I have since updated ggthemes, and now the boxplots are plotted on top of one another. Compare the above code to the following similar code, which correctly dodges the boxplots:

p + geom_boxplot(aes(colour = drv))

Was a bug introduced? Do you have any suggestions on how to "dodge" the colors with the current version of the package?

Does this really require R 2.15?

By the DESCRIPTION file this requires R 2.15 or better, but I just installed into R 2.14.2 (by editing the DESCRIPTION file and installing manually), it appears to work.

Adding a minimal theme

Something along these lines -

minimalTheme = theme_set(theme_bw(12))
minimalTheme = theme_update(
   axis.ticks = element_blank(), 
   legend.position = 'none',
   strip.background = element_blank(), 
   panel.border = element_blank(), 
   panel.background = element_blank(), 
   panel.grid.major = element_line(color = 'grey80'), 
   panel.grid.minor = element_line(color = 'grey90'), 
   panel.border = element_blank()
)

Issues on `canva_palettes`

The canva_palettes has two "Trendy and metropolitan" palettes; the second is empty and therefore
breaks the example.

tibble::enframe(canva_palettes) %>% filter(name == "Trendy and metropolitan")

In addition, there some typos when creating the canvas_df tibble.

I believe this is what you're after:

canva_df <- map2_df(canva_palettes, names(canva_palettes),
                    ~ tibble(color = .x, .id = seq_along(color), palette = .y))

Unable to Install from Github

The themes look great, but I am unable to install it. I have copied the error log to a gist. I am running Mac OS 10.5.8 and R 2.15.0. Any thoughts on why installation fails?

ggthemes::ggthemes_data

I used to grab theme colors to use in a leaflet map with this line. It would give me a vector of RGB collar values.

pal <- as.character(ggthemes::ggthemes_data$gdocs)

Since the update I get an error.

Error: 'ggthemes_data' is not an exported object from 'namespace:ggthemes'

Do you have any work arounds to grab color palettes this way in the newest update?

Suggestion: change package name

to something like ggplot_themes or something else easier to remember and type. The camel case + your abbreviated name is really unwieldy.

Issues with banking functions

Issues raised by a user in an email with the functions in banking:

(1) you take the atan() of raw slopes, but in Cleveland (1993) the weighted average absolute orientation criterion is with normalised slopes, that is they are scaled by their range

(2) you calculate the length of line segments as independent of the aspect ratio, but Cleveland (1993) clealry shows the weight as a function of the aspect ratio

(3) why do you optimize the square of the mean (^2) ?

and

explain why you omitted to square the LOR and GOR criteria in bank_slopes_gor and bank_slopes_lor, as shown in Heer and Agrawala (2006)

Rewrite geom_tufteboxplot and related functions

Since I had to look at this code again with the rewrite for ggproto, there are things I want to change.

  • remove outliers, and use stat_fivenumber by default. Tufte uses the min/max definition of a boxplot.
  • split out the functionality with regard to the alternative notched boxplot into a separate Geom class that has GeomTufteplot as its parent. This seems to be sufficiently different (including in the presentation in the book) from the original boxplot to warrent its own ggproto object, and perhaps its own function.
  • Add GeomTuftecrossbar which is used by the alternative notched boxplot.

Work on this is being done in branch new-tufteboxplot.

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.