CC BY-NC-ND 3.0
plot
plot
myX <- rnorm(100, mean = 0, sd = 1)
myY <- rnorm(100, mean = 10, sd = 1)
plot(x = myX, y = myY)
plot
plot(x = myX, y = myY,
xlab = "XXXXXXXXXX", ylab = "YYYYYYYYYY")
plot
plot(x = myX, y = myY,
xlim = c(-10, 10), ylim = c(5, 15))
plot
plot(x = rep(1:5, 5), y = rep(1:5, each = 5),
pch = 1:25, xlab = "", ylab = "", cex = 2)
plot
plot(x = rep(1:5, 5), y = rep(1:5, each = 5),
pch = 1:25, xlab = "", ylab = "", cex = 2)
text(x = rep(seq(1:5), 5), y = rep(seq(1:5), each = 5),
labels = 1:25, pos = 4)
plot
plot(x = myX, y = myY,
pch = c("a", "@", "#", "1", "=", "-", "_", "o", "O", "0",
letters[1:15]), cex = 2)
plot
plot(x = myX, y = myY,
cex = seq(from = 0.5, to = 5, length.out = 100))
plot
plot(x = myX, y = myY,
cex = seq(from = 0.5, to = 5, length.out = 100),
pch = 16,
col = sample(colors(), 100))
plot
myX <- rnorm(100)
myY <- rnorm(100)
dfGraph <- data.frame(myX, myY)
plot
head(dfGraph, n = 20)
## myX myY
## 1 -1.378218917 0.04866924
## 2 -1.662268949 -0.16686561
## 3 -0.403794063 -0.05235688
## 4 0.577935845 0.37375287
## 5 -1.532462571 -0.29685909
## 6 -0.035550278 1.34390589
## 7 -0.273451534 1.08034573
## 8 0.192711230 -0.06803904
## 9 -1.564790969 0.40600420
## 10 1.623969388 -1.26568216
## 11 -0.574531888 0.71904817
## 12 -1.138485585 0.03065298
## 13 1.373924628 -0.64210521
## 14 0.008102908 0.81323626
## 15 1.897272551 -0.75097833
## 16 0.672998373 -0.74298886
## 17 -2.456344196 -0.32729626
## 18 -1.641669627 -0.11439332
## 19 -0.588792533 1.38047139
## 20 0.500128288 -0.01559370
plot
dfGraph <- dfGraph[order(dfGraph$myX),]
dfGraph$myCol <- colorRampPalette(c("blue", "yellow", "red"))(100)
plot
head(dfGraph, n = 20)
## myX myY myCol
## 57 -2.6484200 -0.65117667 #0000FF
## 17 -2.4563442 -0.32729626 #0505F9
## 59 -1.9703816 1.52171692 #0A0AF4
## 42 -1.7940642 -0.55245324 #0F0FEF
## 75 -1.7660886 -0.13393643 #1414EA
## 2 -1.6622689 -0.16686561 #1919E5
## 90 -1.6502417 0.47012539 #1E1EE0
## 18 -1.6416696 -0.11439332 #2424DA
## 89 -1.6362279 0.60742579 #2929D5
## 9 -1.5647910 0.40600420 #2E2ED0
## 5 -1.5324626 -0.29685909 #3333CB
## 40 -1.5096213 -1.67965770 #3838C6
## 71 -1.4961242 0.21134528 #3D3DC1
## 70 -1.4340675 2.08098170 #4242BC
## 1 -1.3782189 0.04866924 #4848B6
## 92 -1.2911527 0.63482615 #4D4DB1
## 12 -1.1384856 0.03065298 #5252AC
## 60 -1.0376215 -0.06334114 #5757A7
## 93 -0.8487423 -0.93520104 #5C5CA2
## 51 -0.8258940 -1.69167031 #61619D
plot
dfGraph <- dfGraph[order(dfGraph$myY),]
dfGraph$myCex <- seq(from = 0.5, to = 5, length.out = 100)
plot
head(dfGraph, n = 20)
## myX myY myCol myCex
## 72 0.09202184 -3.5504180 #FFE200 0.5000000
## 36 1.19701149 -2.1742027 #FF5700 0.5454545
## 49 0.24300620 -2.0414448 #FFC300 0.5909091
## 21 -0.19235646 -1.7695554 #E7E717 0.6363636
## 51 -0.82589402 -1.6916703 #61619D 0.6818182
## 40 -1.50962134 -1.6796577 #3838C6 0.7272727
## 94 0.03906816 -1.6491644 #FFF200 0.7727273
## 79 1.18158614 -1.5873759 #FF5C00 0.8181818
## 86 -0.75125367 -1.5256968 #71718D 0.8636364
## 48 0.45323714 -1.4409626 #FFAF00 0.9090909
## 47 -0.12378179 -1.4320259 #F2F20C 0.9545455
## 10 1.62396939 -1.2656822 #FF3800 1.0000000
## 45 0.62030109 -1.1943473 #FF9A00 1.0454545
## 32 0.17911183 -1.0720131 #FFDD00 1.0909091
## 97 -0.39140938 -1.0136797 #B9B945 1.1363636
## 61 -0.71082648 -0.9854178 #80807E 1.1818182
## 93 -0.84874233 -0.9352010 #5C5CA2 1.2272727
## 34 1.28510449 -0.8986402 #FF5200 1.2727273
## 15 1.89727255 -0.7509783 #FF2900 1.3181818
## 16 0.67299837 -0.7429889 #FF8500 1.3636364
plot
plot(x = dfGraph$myX, y = dfGraph$myY,
cex = dfGraph$myCex, pch = 16, col = dfGraph$myCol,
xlab = "", ylab = "")
plot
dfGraph$grupo <- factor(
sample(letters[1:5], size = 100, replace = TRUE))
plot
head(dfGraph, n = 20)
## myX myY myCol myCex grupo
## 72 0.09202184 -3.5504180 #FFE200 0.5000000 c
## 36 1.19701149 -2.1742027 #FF5700 0.5454545 a
## 49 0.24300620 -2.0414448 #FFC300 0.5909091 e
## 21 -0.19235646 -1.7695554 #E7E717 0.6363636 a
## 51 -0.82589402 -1.6916703 #61619D 0.6818182 d
## 40 -1.50962134 -1.6796577 #3838C6 0.7272727 c
## 94 0.03906816 -1.6491644 #FFF200 0.7727273 e
## 79 1.18158614 -1.5873759 #FF5C00 0.8181818 a
## 86 -0.75125367 -1.5256968 #71718D 0.8636364 d
## 48 0.45323714 -1.4409626 #FFAF00 0.9090909 e
## 47 -0.12378179 -1.4320259 #F2F20C 0.9545455 b
## 10 1.62396939 -1.2656822 #FF3800 1.0000000 a
## 45 0.62030109 -1.1943473 #FF9A00 1.0454545 c
## 32 0.17911183 -1.0720131 #FFDD00 1.0909091 b
## 97 -0.39140938 -1.0136797 #B9B945 1.1363636 b
## 61 -0.71082648 -0.9854178 #80807E 1.1818182 a
## 93 -0.84874233 -0.9352010 #5C5CA2 1.2272727 c
## 34 1.28510449 -0.8986402 #FF5200 1.2727273 c
## 15 1.89727255 -0.7509783 #FF2900 1.3181818 d
## 16 0.67299837 -0.7429889 #FF8500 1.3636364 e
plot
str(dfGraph)
## 'data.frame': 100 obs. of 5 variables:
## $ myX : num 0.092 1.197 0.243 -0.192 -0.826 ...
## $ myY : num -3.55 -2.17 -2.04 -1.77 -1.69 ...
## $ myCol: chr "#FFE200" "#FF5700" "#FFC300" "#E7E717" ...
## $ myCex: num 0.5 0.545 0.591 0.636 0.682 ...
## $ grupo: Factor w/ 5 levels "a","b","c","d",..: 3 1 5 1 4 3 5 1 4 5 ...
plot
plot(x = dfGraph$myX, y = dfGraph$myY,
pch = 16, xlab = "", ylab = "",
col = as.numeric(dfGraph$grupo))
plot
plot(x = dfGraph$myX, y = dfGraph$myY, pch = 16, xlab = "",
ylab = "", cex = 2, col = as.numeric(dfGraph$grupo))
legend("topleft", fill = seq_along(levels(dfGraph$grupo)),
legend = levels(dfGraph$grupo))
plot
plot(x = dfGraph$myX, y = dfGraph$myY,
pch = as.numeric(dfGraph$grupo), xlab = "", ylab = "",
cex = 2, col = as.numeric(dfGraph$grupo))
legend("topleft", pch = seq_along(levels(dfGraph$grupo)),
legend = levels(dfGraph$grupo),
col = seq_along(levels(dfGraph$grupo)))
plot
myX <- 1:20
myY <- rnorm(20, mean = 10, sd = 1)
plot(x = myX, y = myY, type = 'b')
plot
myX <- 1:20
myY <- rnorm(20, mean = 10, sd = 1)
plot(x = myX, y = myY, type = 'p')
plot
myX <- 1:20
myY <- rnorm(20, mean = 10, sd = 1)
plot(x = myX, y = myY, type = 'l')
plot
myX <- 1:20
myY <- rnorm(20, mean = 10, sd = 1)
plot(x = myX, y = myY, type = 'c')
plot
myX <- 1:20
myY <- rnorm(20, mean = 10, sd = 1)
plot(x = myX, y = myY, type = 'o')
plot
myX <- 1:20
myY <- rnorm(20, mean = 10, sd = 1)
plot(x = myX, y = myY, type = 'h')
plot
myX <- 1:20
myY <- rnorm(20, mean = 10, sd = 1)
plot(x = myX, y = myY, type = 's')
plot
myX <- 1:20
myY <- rnorm(20, mean = 10, sd = 1)
plot(x = myX, y = myY, type = 'n')
plot
plot(x = myX, y = myY, type = 'n')
grid(lwd = 3, lty = 1)
points(x = myX, y = myY, type = "l", lwd = 2)
plot
plot(x = myX, y = myY, type = 'l', lwd = 2)
grid(lwd = 3, lty = 1)
plot
plot(x = myX, y = myY, type = 'l', lwd = 2,
panel.first = grid(lwd = 3, lty = 1))
plot
op <- par(no.readonly = TRUE)
par(mfrow = c(1, 2))
plot(x = myX, y = myY, type = 'l', lwd = 2)
grid(lwd = 3, lty = 1)
plot(x = myX, y = myY, type = 'l', lwd = 2,
panel.first = grid(lwd = 3, lty = 1))
plot
par(op)
plot
par(mfrow = c(1, 2), mar = c(2, 2, 1, 1))
plot(x = myX, y = myY, type = 'l', lwd = 2)
grid(lwd = 3, lty = 1)
plot(x = myX, y = myY, type = 'l', lwd = 2,
panel.first = grid(lwd = 3, lty = 1))
plot
par(op)
plot
par(mfrow = c(2, 2), mar = c(2, 2, 1, 1))
graph4 <- lapply(1:4, function(i){
plot(x = rnorm(100),
y = rnorm(100),
col = i, pch = 16)
})
plot
par(op)
plot
plot(x = myX, y = myY, type = 'l', lwd = 2)
abline(h = mean(myY), lwd = 1, lty = 2)
abline(v = myX[myY == min(myY)], col = 4, lty = 2)
abline(v = myX[myY == max(myY)], col = 2, lty = 2)
hist
hist
myX <- list(
rnorm(1000),
rgamma(1000, shape = 1),
sample(1:100, size = 1000, replace = TRUE),
rbeta(1000, shape1 = 1, shape2 = 2)
)
myTitle <- c("Normal", "Gamma", "Uniform", "Beta")
hist
par(mfrow = c(2, 2), mar = c(2, 2, 1, 1))
tr <- lapply(1:4, function(i){
hist(myX[[i]], col = heat.colors(15),
main = myTitle[i]
)
})
hist
par(op)
hist
myX <- rnorm(1000)
par(mfrow = c(1, 2), mar = c(1, 1, 1, 1))
hist(myX, axes = FALSE, col = rainbow(100))
hist(myX, axes = FALSE, nclass = 100, col = rainbow(100))
hist
par(op)
barplot
barplot
# pkgCheck("palettesForR")
myX <- rnorm(3, mean = 10)
barplot(myX, names.arg = c("A", "B", "C"), col = Cool_gpl)
barplot
par(mar = c(1, 1, 1, 1))
myX <- matrix(c(4, 5, 8, 4, 6, 2, 3, 4, 5), nrow = 3)
barplot(myX, axes = FALSE, col = Pastels_gpl[1:3])
barplot
par(mar = c(1, 1, 1, 1))
barplot(myX, axes = FALSE, col = Pastels_gpl[1:3],
beside = TRUE, legend.text = c("A", "B", "C"))
plot
+ barplot
n <- 50
myX <- rnorm(n)
myY <- rnorm(n)
myCol <- c(2, sample(c(4, 2), size = (n - 1), replace = TRUE))
myColors <- colorRampPalette(c("blue", "red"))(100)
head(data.frame(myX, myY, myCol))
## myX myY myCol
## 1 -0.7284559 0.03600655 2
## 2 1.4177086 -1.80614899 2
## 3 1.5861542 1.09792868 2
## 4 -1.2423248 -0.47986996 4
## 5 0.2758956 0.23012508 4
## 6 -0.1189247 1.69064426 2
plot
+ barplot
myYCut <- cut(myY, breaks = -4:4)
myXCut <- cut(myX, breaks = -4:4)
print(myXCut)
## [1] (-1,0] (1,2] (1,2] (-2,-1] (0,1] (-1,0] (-1,0] (0,1]
## [9] (1,2] (-2,-1] (-2,-1] (-1,0] (-1,0] (-2,-1] (0,1] (-2,-1]
## [17] (-1,0] (0,1] (1,2] (0,1] (1,2] (-1,0] (-2,-1] (0,1]
## [25] (1,2] (0,1] (0,1] (0,1] (-1,0] (-1,0] (-1,0] (-1,0]
## [33] (-2,-1] (0,1] (-1,0] (-1,0] (0,1] (1,2] (1,2] (-1,0]
## [41] (-2,-1] (0,1] (0,1] (1,2] (0,1] (2,3] (-1,0] (1,2]
## [49] (0,1] (-1,0]
## Levels: (-4,-3] (-3,-2] (-2,-1] (-1,0] (0,1] (1,2] (2,3] (3,4]
plot
+ barplot
myYCutCol <- table(myCol, myYCut)
myXCutCol <- table(myCol, myXCut)
print(myXCutCol)
## myXCut
## myCol (-4,-3] (-3,-2] (-2,-1] (-1,0] (0,1] (1,2] (2,3] (3,4]
## 2 0 0 2 8 8 8 1 0
## 4 0 0 6 8 7 2 0 0
plot
+ barplot
xCol <- round(
myXCutCol[1,] / (myXCutCol[1,] + myXCutCol[2,]) * 100
)
xCol[is.na(xCol) | xCol == 0] <- 1
yCol <- round(
myYCutCol[1,] / (myYCutCol[1,] + myYCutCol[2,]) * 100
)
yCol[is.na(yCol) | yCol == 0] <- 1
print(xCol)
## (-4,-3] (-3,-2] (-2,-1] (-1,0] (0,1] (1,2] (2,3] (3,4]
## 1 1 25 50 53 80 100 1
plot
+ barplot
par(mar = c(2, 3, 1, 1))
layout(matrix(c(1, 1, 0,
2, 2, 3,
2, 2, 3), ncol = 3, byrow = TRUE))
barplot(table(myXCut), las = 1, col = myColors[xCol])
plot(x = myX, y = myY, col = myCol, pch = 16,
xlim = c(-4, 4), ylim = c(-4, 4), cex = 1.5,
panel.first = grid())
barplot(table(myYCut), las = 1, horiz = TRUE,
col = myColors[yCol])
plot
+ barplot
plot
+ barplot
graphBarplotCol <- function(n){
myX <- rnorm(n)
myY <- rnorm(n)
myCol <- c(2, sample(c(4, 2), size = (n - 1), replace = TRUE))
myColors <- colorRampPalette(c("blue", "red"))(100)
myYCut <- cut(myY, breaks = -4:4)
myXCut <- cut(myX, breaks = -4:4)
myYCutCol <- table(myCol, myYCut)
myXCutCol <- table(myCol, myXCut)
xCol <- round(
myXCutCol[1,] / (myXCutCol[1,] + myXCutCol[2,]) * 100
)
xCol[is.na(xCol) | xCol == 0] <- 1
yCol <- round(
myYCutCol[1,] / (myYCutCol[1,] + myYCutCol[2,]) * 100
)
yCol[is.na(yCol) | yCol == 0] <- 1
op <- par(no.readonly = TRUE)
par(mar = c(2, 3, 1, 1))
layout(matrix(c(1, 1, 0,
2, 2, 3,
2, 2, 3), ncol = 3, byrow = TRUE))
barplot(table(myXCut), las = 1, col = myColors[xCol])
plot(x = myX, y = myY, col = myCol, pch = 16,
xlim = c(-4, 4), ylim = c(-4, 4), cex = 1.5,
panel.first = grid())
barplot(table(myYCut), las = 1, horiz = TRUE,
col = myColors[yCol])
par(op)
}
plot
+ barplot
graphBarplotCol(n = 1000)
plot
+ barplot
boxplot
boxplot
df <- data.frame(
box1 = rnorm(1000),
box2 = rgamma(1000, shape = 1),
box3 = sample(-3:3, size = 1000, replace = TRUE),
box4 = rbeta(1000, shape1 = 1, shape2 = 2)
)
boxplot
boxplot(df, col = c(rgb(0, 94, 255, maxColorValue = 255),
rgb(255, 0, 174, maxColorValue = 255),
rgb(255, 136, 0, maxColorValue = 255),
rgb(119, 255, 0, maxColorValue = 255)))
boxplot
boxplot
df$cat <- sample(
c("w", "x", "y", "z"),
size = 1000,
replace = TRUE)
boxplot
boxplot(df$box3 ~ df$cat, col = c(
rgb(0, 94, 255, maxColorValue = 255),
rgb(255, 0, 174, maxColorValue = 255),
rgb(255, 136, 0, maxColorValue = 255),
rgb(119, 255, 0, maxColorValue = 255)), ylab = "Box3")
boxplot
boxplot
df$cat2 <- sample(
1:3,
size = 1000,
replace = TRUE)
boxplot
boxplot(df$box4 ~ df$cat*df$cat2, col = c(
rgb(0, 94, 255, maxColorValue = 255),
rgb(255, 0, 174, maxColorValue = 255),
rgb(255, 136, 0, maxColorValue = 255),
rgb(119, 255, 0, maxColorValue = 255)), ylab = "Box4")
boxplot