#ggplot2
##scatter plot
library(ggplot2)
#aes=exis
#geom_point for scatter plot
ggplot(iris, aes(x = sepal.length, y = sepal.width, color = variety)) +
geom_point(size = 2)

Color change according to type
library(ggplot2)
#aes=exis
#geom_point for scatter plot
ggplot(iris, aes(x = sepal.length, y = sepal.width, color = variety)) +
geom_point(size = 2) +
#Naming should be according to the dataset
scale_colour_manual(values = c("Setosa" = "blue", "Versicolor" = "red", "Virginica" = "green"))

Lebels
library(ggplot2)
#aes=exis
#geom_point for scatter plot
ggplot(iris, aes(x = sepal.length, y = sepal.width, color = variety)) +
geom_point(size = 2) +
#Naming should be according to the dataset
scale_colour_manual(values = c("Setosa" = "blue", "Versicolor" = "red", "Virginica" = "green")) +
labs(title = "Scatterplot using ggplot2",
x = "Length",
y = "Width",
caption = "Source: Iris Dataset"
)

Theme
library(ggplot2)
#aes=exis
#geom_point for scatter plot
ggplot(iris, aes(x = sepal.length, y = sepal.width, color = variety)) +
geom_point(size = 2) +
#Naming should be according to the dataset
scale_colour_manual(values = c("Setosa" = "blue", "Versicolor" = "red", "Virginica" = "green")) +
labs(title = "Scatterplot using ggplot2",
x = "Length",
y = "Width",
caption = "Source: Iris Dataset") +
theme_minimal() #transparent/white background

Legend position
library(ggplot2)
#aes=exis
#geom_point for scatter plot
ggplot(iris, aes(x = sepal.length, y = sepal.width, color = variety)) +
geom_point(size = 2) +
#Naming should be according to the dataset
scale_colour_manual(values = c("Setosa" = "blue", "Versicolor" = "red", "Virginica" = "green")) +
labs(title = "Scatterplot using ggplot2",
x = "Length",
y = "Width",
caption = "Source: Iris Dataset") +
theme(legend.position = "bottom")

Text change
library(ggplot2)
#aes=exis
#geom_point for scatter plot
ggplot(iris, aes(x = sepal.length, y = sepal.width, color = variety)) +
geom_point(size = 2) +
#Naming should be according to the dataset
scale_colour_manual(values = c("Setosa" = "blue", "Versicolor" = "red", "Virginica" = "green")) +
labs(title = "Scatterplot using ggplot2",
x = "Length",
y = "Width",
caption = "Source: Iris Dataset") +
theme(legend.position = "bottom",
text = element_text(color = "black", size = 10),
axis.text.x = element_text(color = "blue", size = 9),
axis.text.y = element_text(color = "red", size = 9)
)

Image quality modification
library(ggplot2)
#aes=exis
#geom_point for scatter plot
scatter_plot = ggplot(iris, aes(x = sepal.length, y = sepal.width, color = variety)) +
geom_point(size = 2) +
#Naming should be according to the dataset
scale_colour_manual(values = c("Setosa" = "blue", "Versicolor" = "red", "Virginica" = "green")) +
labs(title = "Scatterplot using ggplot2",
x = "Length",
y = "Width",
caption = "Source: Iris Dataset") +
theme(legend.position = "bottom",
text = element_text(color = "black", size = 10),
axis.text.x = element_text(color = "blue", size = 9),
axis.text.y = element_text(color = "red", size = 9)
)
scatter_plot
#save as a variable
ggsave("scatter_plot_500dpi.png", dpi = 500)
Saving 4.17 x 2.57 in image

Plot as a Variable
scatter_plot

Boxplot
box_plot = ggplot(iris, aes(x = variety, y = sepal.length, fill = variety)) +
#fill for default color
#aes foe axis
geom_boxplot() +
labs(title = "Boxplot using ggplot2",
x = "Class",
y = "Length") +
theme(legend.position = "right",
text = element_text(color = "black", size = 10),
axis.text.x = element_text(color = "blue", size = 9),
axis.text.y = element_text(color = "red", size = 8))
box_plot
#save as a variable
ggsave("box_plot_500dpi.png", dpi = 500)
Saving 7.29 x 4.5 in image

#here the dot sign is a outlier
As a variable
box_plot

LS0tDQp0aXRsZTogIlIgTm90ZWJvb2siDQpvdXRwdXQ6IGh0bWxfbm90ZWJvb2sNCi0tLQ0KDQojZ2dwbG90Mg0KDQojI3NjYXR0ZXIgcGxvdA0KDQpgYGB7cn0NCmxpYnJhcnkoZ2dwbG90MikNCiNhZXM9ZXhpcw0KI2dlb21fcG9pbnQgZm9yIHNjYXR0ZXIgcGxvdA0KZ2dwbG90KGlyaXMsIGFlcyh4ID0gc2VwYWwubGVuZ3RoLCB5ID0gc2VwYWwud2lkdGgsIGNvbG9yID0gdmFyaWV0eSkpICsNCiAgZ2VvbV9wb2ludChzaXplID0gMikNCmBgYA0KIyMjIENvbG9yIGNoYW5nZSBhY2NvcmRpbmcgdG8gdHlwZQ0KDQpgYGB7cn0NCmxpYnJhcnkoZ2dwbG90MikNCiNhZXM9ZXhpcw0KI2dlb21fcG9pbnQgZm9yIHNjYXR0ZXIgcGxvdA0KZ2dwbG90KGlyaXMsIGFlcyh4ID0gc2VwYWwubGVuZ3RoLCB5ID0gc2VwYWwud2lkdGgsIGNvbG9yID0gdmFyaWV0eSkpICsNCiAgZ2VvbV9wb2ludChzaXplID0gMikgKw0KICAjTmFtaW5nIHNob3VsZCBiZSBhY2NvcmRpbmcgdG8gdGhlIGRhdGFzZXQNCiAgc2NhbGVfY29sb3VyX21hbnVhbCh2YWx1ZXMgPSBjKCJTZXRvc2EiID0gImJsdWUiLCAiVmVyc2ljb2xvciIgPSAicmVkIiwgIlZpcmdpbmljYSIgPSAiZ3JlZW4iKSkNCmBgYA0KDQojIyMgTGViZWxzDQpgYGB7cn0NCmxpYnJhcnkoZ2dwbG90MikNCiNhZXM9ZXhpcw0KI2dlb21fcG9pbnQgZm9yIHNjYXR0ZXIgcGxvdA0KZ2dwbG90KGlyaXMsIGFlcyh4ID0gc2VwYWwubGVuZ3RoLCB5ID0gc2VwYWwud2lkdGgsIGNvbG9yID0gdmFyaWV0eSkpICsNCiAgZ2VvbV9wb2ludChzaXplID0gMikgKw0KICAjTmFtaW5nIHNob3VsZCBiZSBhY2NvcmRpbmcgdG8gdGhlIGRhdGFzZXQNCiAgc2NhbGVfY29sb3VyX21hbnVhbCh2YWx1ZXMgPSBjKCJTZXRvc2EiID0gImJsdWUiLCAiVmVyc2ljb2xvciIgPSAicmVkIiwgIlZpcmdpbmljYSIgPSAiZ3JlZW4iKSkgKw0KICBsYWJzKHRpdGxlID0gIlNjYXR0ZXJwbG90IHVzaW5nIGdncGxvdDIiLA0KICAgICAgIHggPSAiTGVuZ3RoIiwNCiAgICAgICB5ID0gIldpZHRoIiwNCiAgICAgICBjYXB0aW9uID0gIlNvdXJjZTogSXJpcyBEYXRhc2V0Ig0KICAgICAgICkNCmBgYA0KIyMjIFRoZW1lDQpgYGB7cn0NCmxpYnJhcnkoZ2dwbG90MikNCiNhZXM9ZXhpcw0KI2dlb21fcG9pbnQgZm9yIHNjYXR0ZXIgcGxvdA0KZ2dwbG90KGlyaXMsIGFlcyh4ID0gc2VwYWwubGVuZ3RoLCB5ID0gc2VwYWwud2lkdGgsIGNvbG9yID0gdmFyaWV0eSkpICsNCiAgZ2VvbV9wb2ludChzaXplID0gMikgKw0KICAjTmFtaW5nIHNob3VsZCBiZSBhY2NvcmRpbmcgdG8gdGhlIGRhdGFzZXQNCiAgc2NhbGVfY29sb3VyX21hbnVhbCh2YWx1ZXMgPSBjKCJTZXRvc2EiID0gImJsdWUiLCAiVmVyc2ljb2xvciIgPSAicmVkIiwgIlZpcmdpbmljYSIgPSAiZ3JlZW4iKSkgKw0KICBsYWJzKHRpdGxlID0gIlNjYXR0ZXJwbG90IHVzaW5nIGdncGxvdDIiLA0KICAgICAgIHggPSAiTGVuZ3RoIiwNCiAgICAgICB5ID0gIldpZHRoIiwNCiAgICAgICBjYXB0aW9uID0gIlNvdXJjZTogSXJpcyBEYXRhc2V0IikgKw0KICB0aGVtZV9taW5pbWFsKCkgI3RyYW5zcGFyZW50L3doaXRlIGJhY2tncm91bmQNCmBgYA0KDQojIyMgTGVnZW5kIHBvc2l0aW9uDQpgYGB7cn0NCmxpYnJhcnkoZ2dwbG90MikNCiNhZXM9ZXhpcw0KI2dlb21fcG9pbnQgZm9yIHNjYXR0ZXIgcGxvdA0KZ2dwbG90KGlyaXMsIGFlcyh4ID0gc2VwYWwubGVuZ3RoLCB5ID0gc2VwYWwud2lkdGgsIGNvbG9yID0gdmFyaWV0eSkpICsNCiAgZ2VvbV9wb2ludChzaXplID0gMikgKw0KICAjTmFtaW5nIHNob3VsZCBiZSBhY2NvcmRpbmcgdG8gdGhlIGRhdGFzZXQNCiAgc2NhbGVfY29sb3VyX21hbnVhbCh2YWx1ZXMgPSBjKCJTZXRvc2EiID0gImJsdWUiLCAiVmVyc2ljb2xvciIgPSAicmVkIiwgIlZpcmdpbmljYSIgPSAiZ3JlZW4iKSkgKw0KICBsYWJzKHRpdGxlID0gIlNjYXR0ZXJwbG90IHVzaW5nIGdncGxvdDIiLA0KICAgICAgIHggPSAiTGVuZ3RoIiwNCiAgICAgICB5ID0gIldpZHRoIiwNCiAgICAgICBjYXB0aW9uID0gIlNvdXJjZTogSXJpcyBEYXRhc2V0IikgKw0KICB0aGVtZShsZWdlbmQucG9zaXRpb24gPSAiYm90dG9tIikNCmBgYA0KIyMjIFRleHQgY2hhbmdlDQpgYGB7cn0NCmxpYnJhcnkoZ2dwbG90MikNCiNhZXM9ZXhpcw0KI2dlb21fcG9pbnQgZm9yIHNjYXR0ZXIgcGxvdA0KZ2dwbG90KGlyaXMsIGFlcyh4ID0gc2VwYWwubGVuZ3RoLCB5ID0gc2VwYWwud2lkdGgsIGNvbG9yID0gdmFyaWV0eSkpICsNCiAgZ2VvbV9wb2ludChzaXplID0gMikgKw0KICAjTmFtaW5nIHNob3VsZCBiZSBhY2NvcmRpbmcgdG8gdGhlIGRhdGFzZXQNCiAgc2NhbGVfY29sb3VyX21hbnVhbCh2YWx1ZXMgPSBjKCJTZXRvc2EiID0gImJsdWUiLCAiVmVyc2ljb2xvciIgPSAicmVkIiwgIlZpcmdpbmljYSIgPSAiZ3JlZW4iKSkgKw0KICBsYWJzKHRpdGxlID0gIlNjYXR0ZXJwbG90IHVzaW5nIGdncGxvdDIiLA0KICAgICAgIHggPSAiTGVuZ3RoIiwNCiAgICAgICB5ID0gIldpZHRoIiwNCiAgICAgICBjYXB0aW9uID0gIlNvdXJjZTogSXJpcyBEYXRhc2V0IikgKw0KICANCiAgdGhlbWUobGVnZW5kLnBvc2l0aW9uID0gImJvdHRvbSIsDQogICAgICAgIHRleHQgPSBlbGVtZW50X3RleHQoY29sb3IgPSAiYmxhY2siLCBzaXplID0gMTApLA0KICAgICAgICBheGlzLnRleHQueCA9IGVsZW1lbnRfdGV4dChjb2xvciA9ICJibHVlIiwgc2l6ZSA9IDkpLA0KICAgICAgICBheGlzLnRleHQueSA9IGVsZW1lbnRfdGV4dChjb2xvciA9ICJyZWQiLCBzaXplID0gOSkNCiAgICAgICAgKQ0KYGBgDQojIyMgSW1hZ2UgcXVhbGl0eSBtb2RpZmljYXRpb24NCg0KYGBge3J9DQpsaWJyYXJ5KGdncGxvdDIpDQojYWVzPWV4aXMNCiNnZW9tX3BvaW50IGZvciBzY2F0dGVyIHBsb3QNCnNjYXR0ZXJfcGxvdCA9IGdncGxvdChpcmlzLCBhZXMoeCA9IHNlcGFsLmxlbmd0aCwgeSA9IHNlcGFsLndpZHRoLCBjb2xvciA9IHZhcmlldHkpKSArDQogIGdlb21fcG9pbnQoc2l6ZSA9IDIpICsNCiAgI05hbWluZyBzaG91bGQgYmUgYWNjb3JkaW5nIHRvIHRoZSBkYXRhc2V0DQogIHNjYWxlX2NvbG91cl9tYW51YWwodmFsdWVzID0gYygiU2V0b3NhIiA9ICJibHVlIiwgIlZlcnNpY29sb3IiID0gInJlZCIsICJWaXJnaW5pY2EiID0gImdyZWVuIikpICsNCiAgbGFicyh0aXRsZSA9ICJTY2F0dGVycGxvdCB1c2luZyBnZ3Bsb3QyIiwNCiAgICAgICB4ID0gIkxlbmd0aCIsDQogICAgICAgeSA9ICJXaWR0aCIsDQogICAgICAgY2FwdGlvbiA9ICJTb3VyY2U6IElyaXMgRGF0YXNldCIpICsNCiAgDQogIHRoZW1lKGxlZ2VuZC5wb3NpdGlvbiA9ICJib3R0b20iLA0KICAgICAgICB0ZXh0ID0gZWxlbWVudF90ZXh0KGNvbG9yID0gImJsYWNrIiwgc2l6ZSA9IDEwKSwNCiAgICAgICAgYXhpcy50ZXh0LnggPSBlbGVtZW50X3RleHQoY29sb3IgPSAiYmx1ZSIsIHNpemUgPSA5KSwNCiAgICAgICAgYXhpcy50ZXh0LnkgPSBlbGVtZW50X3RleHQoY29sb3IgPSAicmVkIiwgc2l6ZSA9IDkpDQogICAgICAgICkNCnNjYXR0ZXJfcGxvdA0KI3NhdmUgYXMgYSB2YXJpYWJsZQ0KZ2dzYXZlKCJzY2F0dGVyX3Bsb3RfNTAwZHBpLnBuZyIsIGRwaSA9IDUwMCkNCmBgYA0KIyMjIFBsb3QgYXMgYSBWYXJpYWJsZQ0KYGBge3J9DQpzY2F0dGVyX3Bsb3QNCmBgYA0KIyMgQm94cGxvdA0KDQpgYGB7cn0NCmJveF9wbG90ID0gZ2dwbG90KGlyaXMsIGFlcyh4ID0gdmFyaWV0eSwgeSA9IHNlcGFsLmxlbmd0aCwgZmlsbCA9IHZhcmlldHkpKSArDQogICNmaWxsIGZvciBkZWZhdWx0IGNvbG9yIA0KICAjYWVzIGZvZSBheGlzDQpnZW9tX2JveHBsb3QoKSArDQogIGxhYnModGl0bGUgPSAiQm94cGxvdCB1c2luZyBnZ3Bsb3QyIiwNCiAgICAgICB4ID0gIkNsYXNzIiwNCiAgICAgICB5ID0gIkxlbmd0aCIpICsNCiAgDQogIHRoZW1lKGxlZ2VuZC5wb3NpdGlvbiA9ICJyaWdodCIsDQogICAgICAgIHRleHQgPSBlbGVtZW50X3RleHQoY29sb3IgPSAiYmxhY2siLCBzaXplID0gMTApLA0KICAgICAgICBheGlzLnRleHQueCA9IGVsZW1lbnRfdGV4dChjb2xvciA9ICJibHVlIiwgc2l6ZSA9IDkpLA0KICAgICAgICBheGlzLnRleHQueSA9IGVsZW1lbnRfdGV4dChjb2xvciA9ICJyZWQiLCBzaXplID0gOCkpDQogIGJveF9wbG90DQojc2F2ZSBhcyBhIHZhcmlhYmxlDQpnZ3NhdmUoImJveF9wbG90XzUwMGRwaS5wbmciLCBkcGkgPSA1MDApDQojaGVyZSB0aGUgZG90IHNpZ24gaXMgYSBvdXRsaWVyDQpgYGANCiMjIyBBcyBhIHZhcmlhYmxlDQpgYGB7cn0NCmJveF9wbG90DQpgYGANCg0K