library(ggplot2)
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(tidyverse)
## ── Attaching core tidyverse packages ──────────────────────── tidyverse 2.0.0 ──
## ✔ forcats   1.0.1     ✔ stringr   1.6.0
## ✔ lubridate 1.9.5     ✔ tibble    3.3.1
## ✔ purrr     1.2.2     ✔ tidyr     1.3.2
## ✔ readr     2.2.0
## ── Conflicts ────────────────────────────────────────── tidyverse_conflicts() ──
## ✖ dplyr::filter() masks stats::filter()
## ✖ dplyr::lag()    masks stats::lag()
## ℹ Use the conflicted package (<http://conflicted.r-lib.org/>) to force all conflicts to become errors
Data=read.table(file.choose(),header=T)
Data
##              Provinsi ListrikPLN
## 1                ACEH      99.49
## 2       SUMATERAUTARA      99.28
## 3       SUMATERABARAT      99.16
## 4                RIAU      97.87
## 5               JAMBI      98.40
## 6     SUMATERASELATAN      96.70
## 7            BENGKULU      99.67
## 8             LAMPUNG      99.32
## 9  KEP.BANGKABELITUNG      99.60
## 10           KEP.RIAU      98.81
## 11         DKIJAKARTA      99.84
## 12          JAWABARAT      99.96
## 13         JAWATENGAH     100.00
## 14       DIYOGYAKARTA     100.00
## 15          JAWATIMUR      99.82
## 16             BANTEN      99.80
## 17               BALI      99.98
## 18  NUSATENGGARABARAT      99.73
## 19  NUSATENGGARATIMUR      92.83
## 20    KALIMANTANBARAT      94.06
## 21   KALIMANTANTENGAH      90.69
## 22  KALIMANTANSELATAN      99.24
## 23    KALIMANTANTIMUR      97.77
## 24    KALIMANTANUTARA      97.73
## 25      SULAWESIUTARA      99.78
## 26     SULAWESITENGAH      96.77
## 27    SULAWESISELATAN      98.53
## 28   SULAWESITENGGARA      98.32
## 29          GORONTALO      99.58
## 30      SULAWESIBARAT      97.10
## 31             MALUKU      96.66
## 32        MALUKUUTARA      96.12
## 33         PAPUABARAT      84.16
## 34     PAPUABARATDAYA      94.09
## 35              PAPUA      91.78
## 36       PAPUASELATAN      73.62
## 37        PAPUATENGAH      35.67
## 38    PAPUAPEGUNUNGAN      20.78
#Histogram
ggplot(Data,aes(x=ListrikPLN)) +
  geom_histogram(
    binwidth=2,
    boundary=20,
    fill="pink",
    color="black"
  ) +
  labs(
    title="Persentase Rumah Tangga dengan Sumber Penerangan PLN di Indonesia",
    x="Listrik PLN (%)",
    y="Frekuensi"
  ) +
  theme_minimal() +
  theme(
    plot.title=element_text(hjust=0.5,face="bold")
  )

#Boxplot
ggplot(Data,aes(x="",y=ListrikPLN)) +
  geom_boxplot(fill="red") +
  labs(
    title="Box Plot Persentase Rumah Tangga dengan Sumber Penerangan PLN Indonesia",
    x="",
    y="Listrik PLN (%)"
  ) +
  theme_minimal() +
  theme(
    plot.title=element_text(hjust=0.5,face="bold")
  )

#Data khusus Kalimantan
Data_Kalimantan=Data %>%
  filter(str_starts(Provinsi,"KALIMANTAN"))

Data_Kalimantan
##            Provinsi ListrikPLN
## 1   KALIMANTANBARAT      94.06
## 2  KALIMANTANTENGAH      90.69
## 3 KALIMANTANSELATAN      99.24
## 4   KALIMANTANTIMUR      97.77
## 5   KALIMANTANUTARA      97.73
#Barplot data Kalimantan
ggplot(Data_Kalimantan,aes(x=Provinsi,y=ListrikPLN,fill=Provinsi)) +
  geom_col() +
  scale_fill_manual(values=c(
    "#8FAFC4",
    "#A98282",
    "#D8C7A3",
    "#E8E1D5",
    "#6F8798"
  )) +
  labs(
    title="Persentase Rumah Tangga dengan Sumber Penerangan PLN di Pulau Kalimantan",
    x="Provinsi",
    y="Listrik PLN (%)"
  ) +
  theme_minimal() +
  theme(
    axis.text.x=element_text(angle=45,hjust=1),
    plot.title=element_text(hjust=0.5,face="bold"),
    legend.position="none"
  )