> x <- seq(0, 1, 0.01)
> y <- seq(0, 1, 0.01)
> z <- (2 * x - 1) * (2 * y - 1)
> scatterplot3d(x, y, z, color = "blue", pch = 19) |
![C1-002.jpg](images/c1-002.jpg)
Frechet-Hoeffding Lower Bound
> par(mfrow = c(1, 1))
> n <- 10000
> x <- runif(n)
> y <- runif(n)
> z.max <- pmin(x, y)
> z.min <- pmax(x + y - 1, 0)
> scatterplot3d(x, y, z.max, pch = 16, angle = 120, col.grid = "lightblue",
+ highlight.3d = T, col.axis = "blue", main = "Frechet-Hoeffding Lower Bound") |
![C1-003.jpg](images/c1-003.jpg)
Frechet-Hoeffding Upper Bound
> par(mfrow = c(1, 1))
> n <- 10000
> x <- runif(n)
> y <- runif(n)
> z.max <- pmin(x, y)
> z.min <- pmax(x + y - 1, 0)
> scatterplot3d(x, y, z.max, pch = 16, angle = 120, col.grid = "lightblue",
+ highlight.3d = T, col.axis = "blue", main = "Frechet-Hoeffding Upper Bound") |
![C1-004.jpg](images/c1-004.jpg)
Product Copula
> par(mfrow = c(1, 1))
> n <- 10000
> x <- runif(n)
> y <- runif(n)
> z <- (x * y)
> scatterplot3d(x, y, z.max, pch = 16, angle = 120, col.grid = "lightblue",
+ highlight.3d = T, col.axis = "blue", main = "Product Copula") |
![C1-005.jpg](images/c1-005.jpg)