x <- 1:100
n <- length(x)
set.seed(5)
x1 <- c(7,4,6,2,9,3,8,1,6,3)
y1 <- c(3,6,5,8,3,4,2,9,2,6)
x2 <- c(6,3,4,9,1,8,4,2,5,7)
y2 <- c(7,8,2,1,7,9,6,3,5,4)
data <- data.frame(x1, y1, x2, y2)
summary(data.frame(x1,y1,x2,y2))
## x1 y1 x2 y2
## Min. :1.00 Min. :2.0 Min. :1.00 Min. :1.00
## 1st Qu.:3.00 1st Qu.:3.0 1st Qu.:3.25 1st Qu.:3.25
## Median :5.00 Median :4.5 Median :4.50 Median :5.50
## Mean :4.90 Mean :4.8 Mean :4.90 Mean :5.20
## 3rd Qu.:6.75 3rd Qu.:6.0 3rd Qu.:6.75 3rd Qu.:7.00
## Max. :9.00 Max. :9.0 Max. :9.00 Max. :9.00
x <- as.matrix(data[, c("x1", "x2")])
d <- as.matrix(data[, c("y1", "y2")])
matplot(x, d, type = 'p', pch = 1:2, col = 1:2, xlab = 'X values', ylab = 'Y values', main = 'Scatterplot of x1,y1 and x2,y2')

COL <- c("blue", "red")
matplot(x, d, type = 'p', pch = 16, col = COL,
main = '散布図',
xlab = 'x',
ylab = 'y')
grid()
legend('topleft', pch = 16, col = COL, legend = colnames(d))

COL <- c("blue", "red")
matplot(x, d, type = 'n',
ylim = c(0, 10),
main = '散布図',
xlab = 'X',
ylab = 'Y')
abline(lty = 2,
col = gray(0.5, 0.25),
h = seq(0, 10, 2),
v = seq(0, 10, 2))
PCH <- 16:17
matpoints(x[, 1], d[, 1], pch = PCH[1], col = COL[1])
matpoints(x[, 2], d[, 2], pch = PCH[2], col = COL[2])
legend('topright', pch = PCH, col = COL, legend = colnames(d))

COL <- c("blue", "red")
pairs(data, pch = 16, col = COL[1], main = 'Pairs Plot', labels = c("x1", "y1", "x2", "y2"))
library(plotly)
## 要求されたパッケージ ggplot2 をロード中です
##
## 次のパッケージを付け加えます: 'plotly'
## 以下のオブジェクトは 'package:ggplot2' からマスクされています:
##
## last_plot
## 以下のオブジェクトは 'package:stats' からマスクされています:
##
## filter
## 以下のオブジェクトは 'package:graphics' からマスクされています:
##
## layout

COL <- c("blue", "red")
kyokasho <- list(size = 11,
color = 'blue',
family = 'UD Digi Kyokasho NK-R')
plot_ly() %>%
add_trace(x = x1, y = y1, type = 'scatter', mode = 'markers', name = 'x1 vs y1', marker = list(color = COL[1])) %>%
add_trace(x = x2, y = y2, type = 'scatter', mode = 'markers', name = 'x2 vs y2', marker = list(color = COL[2])) %>%
layout(
title = '散布図',
font = kyokasho,
xaxis = list(title = 'X'),
yaxis = list(title = 'Y', range = c(0, 10))
)