library(dplyr)
Data1 <- read.csv(file.choose(), header=TRUE)
Data2 <- read.csv(file.choose(), header=TRUE)
Data3 <- read.csv(file.choose(), header=TRUE)
library(dplyr)
##
## Attaching package: 'dplyr'
## The following objects are masked from 'package:stats':
##
## filter, lag
## The following objects are masked from 'package:base':
##
## intersect, setdiff, setequal, union
library(ggplot2)
library(forcats)
#Visualisasi Besaran = Lollipop Chart (Tingkat Pendidikan Tertinggi Masyarakat Jawa Barat)
Data1 %>%
count(Pendidikan) %>%
arrange(desc(n)) %>%
slice_max(n, n = 10) %>%
ggplot() +
geom_segment(aes(x = fct_reorder(as.factor(Pendidikan), n), xend = fct_reorder(as.factor(Pendidikan), n), y = 0, yend = n), color = "blue") +
geom_point(aes(x = fct_reorder(as.factor(Pendidikan), n), y = n), color = "orange", size = 2) +
geom_text(aes(x = fct_reorder(as.factor(Pendidikan), n), y = n, label = n), vjust = -0.5, color = "black") +
scale_y_continuous(expand = c(0, 5000)) +
coord_flip() +
ggtitle("Tingkat Pendidikan tertinggi Masyarakat Jawa Barat 2023") +
xlab("") +
ylab("Jumlah") +
theme_light() +
theme(plot.title = element_text(hjust = 0.5))
jenis_pendidikan <- c("SD", "SMP", "SMA", "SMK", "S1")
top_5_data <- Data2 %>%
filter(Jenis.Pendidikan %in% jenis_pendidikan)
ggplot(top_5_data, aes(x = as.factor(Penerima.KIP), y = Responden, fill = as.factor(Jenis.Pendidikan))) +
geom_bar(stat = "identity") +
labs(fill = "Tahun") +
ggtitle("Penerima KIP dan Tidak Berdasarkan Pendidikan di Jawa Barat 2023") +
xlab("") +
ylab("Total") +
scale_fill_brewer(palette = "Set2") +
theme_minimal()
#DensityPlot
ggplot(Data3)+
geom_density(aes(x=Pedesaan,fill= "Pedesaan" ),color="black", alpha=0.4)+
geom_density(aes(x=Pekotaan,fill="Pekotaan"), color="black", alpha=0.4)+
labs(title="Density Plot Pengeluaran Konsumsi Rumah Tangga 2023")+
xlab("Pengeluaran Konsumsi")+
ylab("Jumlah")+
xlim(0,5000000)
## Warning: Removed 1885 rows containing non-finite values (`stat_density()`).
## Warning: Removed 3570 rows containing non-finite values (`stat_density()`).
#ViolinPlot
ggplot(Data3, aes(x = "", y = Pekotaan)) +
geom_violin(fill = "skyblue") +
labs(title = "Violin Plot: Distribusi Pengeluaran Konsumsi Masyarakat Pekotaan",
x = NULL,
y = "Pengeluaran Konsumsi") +
theme_minimal()
#PieChart ()
Data1 %>%
count(Pendidikan)%>%
top_n(5, n)%>%
mutate(Percentage = n / sum(n) * 100) %>%
ggplot(aes(x = "", y = Percentage, fill = Pendidikan)) +
geom_bar(stat = "identity", width = 1) +
coord_polar("y") +
geom_text(aes(label = sprintf("%.1f%%", Percentage)), position = position_stack(vjust = 0.5), color = "white") +
scale_fill_brewer(palette = "Set2") +
ggtitle("Tingkat Pendidikan tertinggi Masyarakat Jawa Barat 2023") +
theme_void() +
theme(plot.title = element_text(hjust = 0.5))
Data2 %>%
count(Jenis.Pendidikan) %>%
top_n(5, n) %>%
mutate(ymax = cumsum(n), ymin = lag(ymax, default = 0)) %>%
ggplot(aes(ymax = ymax, ymin = ymin, xmax = 15000000, xmin = 10000000, fill = Jenis.Pendidikan)) +
geom_rect() +
coord_polar(theta = "y") +
xlim(c(0, 15000000)) +
theme_classic()