# ===============================
# DATA VISUALIZATION KECAMATAN
# ===============================

# create dataset
area_data <- data.frame(
  district = c("Asemrowo","Benowo","Bubutan","Bulak","Dukuh Pakis",
               "Gayungan","Genteng","Gubeng","Gunung Anyar","Jambangan",
               "Karang Pilang","Kenjeran","Krembangan","Lakarsantri",
               "Mulyorejo","Pabean Cantikan","Pakal","Rungkut","Sambikerep",
               "Sawahan","Semampir","Simokerto","Sukolilo","Sukomanunggal",
               "Tambaksari","Tandes","Tegalsari","Tenggilis Mejoyo",
               "Wiyung","Wonocolo","Wonokromo"),

  income_val = c(4.1,3.7,2.8,3.2,5.6,4.6,3.5,4,4.1,5.3,4.7,4.9,4.4,
                 4.1,3.7,2.8,3.2,5.6,4.6,3.5,4,4.1,5.3,4.7,4.9,4.4,
                 4.1,3.7,2.8,3.2,5.6),

  spending_val = c(2.5,3,3.4,2.8,5.2,4.6,4.4,4.7,3.8,3.4,3.6,2.4,
                   2.7,3.2,4.1,2.6,2.9,4,3.3,3,2.3,2.6,4.5,3.7,
                   2.8,3.2,3.3,4.2,3.7,3.9,3.5),

  household_avg = c(4.2,4,3.5,4.1,3,3.1,2.8,2.9,3.6,3.8,3.7,4.5,
                    4.3,3.9,3.2,4.4,4.1,3.3,3.8,4.2,4.7,4.3,3,
                    3.5,4.4,3.9,3.7,3.1,3.6,3.4,3.8)
)

# numeric vector example
sample_x <- c(850,920,1100,1250,1300,1400,1500,1550,1600,1750,2100,8500)

# ===============================
# SUMMARY
# ===============================

summary(area_data)
   district           income_val     spending_val   household_avg  
 Length:31          Min.   :2.800   Min.   :2.300   Min.   :2.800  
 Class :character   1st Qu.:3.600   1st Qu.:2.850   1st Qu.:3.350  
 Mode  :character   Median :4.100   Median :3.400   Median :3.800  
                    Mean   :4.168   Mean   :3.461   Mean   :3.735  
                    3rd Qu.:4.700   3rd Qu.:3.950   3rd Qu.:4.150  
                    Max.   :5.600   Max.   :5.200   Max.   :4.700  
# ===============================
# MEAN & SD
# ===============================

mean(sample_x)
[1] 1985
sd(sample_x)
[1] 2081.164
# ===============================
# HISTOGRAM BASE R
# ===============================

hist(
  sample_x,
  breaks = 8,
  col = "skyblue",
  border = "white",
  main = "Distribution of Sample Data",
  xlab = "Values"
)


# ===============================
# GGPLOT HISTOGRAM
# ===============================

library(reshape2)
library(ggplot2)

long_format <- melt(
  area_data[, c("income_val","spending_val","household_avg")]
)

ggplot(long_format, aes(x = value, fill = variable)) +
  geom_histogram(
    bins = 12,
    alpha = 0.6,
    color = "black"
  ) +
  facet_wrap(~variable, scales = "free") +
  labs(
    title = "Distribution of Kecamatan Variables",
    x = "Value",
    y = "Frequency"
  ) +
  theme_bw() +
  scale_fill_brewer(palette = "Set2")

LS0tDQp0aXRsZTogIlIgTm90ZWJvb2siDQpvdXRwdXQ6IGh0bWxfbm90ZWJvb2sNCi0tLQ0KYGBge3J9DQojID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0NCiMgREFUQSBWSVNVQUxJWkFUSU9OIEtFQ0FNQVRBTg0KIyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09DQoNCiMgY3JlYXRlIGRhdGFzZXQNCmFyZWFfZGF0YSA8LSBkYXRhLmZyYW1lKA0KICBkaXN0cmljdCA9IGMoIkFzZW1yb3dvIiwiQmVub3dvIiwiQnVidXRhbiIsIkJ1bGFrIiwiRHVrdWggUGFraXMiLA0KICAgICAgICAgICAgICAgIkdheXVuZ2FuIiwiR2VudGVuZyIsIkd1YmVuZyIsIkd1bnVuZyBBbnlhciIsIkphbWJhbmdhbiIsDQogICAgICAgICAgICAgICAiS2FyYW5nIFBpbGFuZyIsIktlbmplcmFuIiwiS3JlbWJhbmdhbiIsIkxha2Fyc2FudHJpIiwNCiAgICAgICAgICAgICAgICJNdWx5b3Jlam8iLCJQYWJlYW4gQ2FudGlrYW4iLCJQYWthbCIsIlJ1bmdrdXQiLCJTYW1iaWtlcmVwIiwNCiAgICAgICAgICAgICAgICJTYXdhaGFuIiwiU2VtYW1waXIiLCJTaW1va2VydG8iLCJTdWtvbGlsbyIsIlN1a29tYW51bmdnYWwiLA0KICAgICAgICAgICAgICAgIlRhbWJha3NhcmkiLCJUYW5kZXMiLCJUZWdhbHNhcmkiLCJUZW5nZ2lsaXMgTWVqb3lvIiwNCiAgICAgICAgICAgICAgICJXaXl1bmciLCJXb25vY29sbyIsIldvbm9rcm9tbyIpLA0KDQogIGluY29tZV92YWwgPSBjKDQuMSwzLjcsMi44LDMuMiw1LjYsNC42LDMuNSw0LDQuMSw1LjMsNC43LDQuOSw0LjQsDQogICAgICAgICAgICAgICAgIDQuMSwzLjcsMi44LDMuMiw1LjYsNC42LDMuNSw0LDQuMSw1LjMsNC43LDQuOSw0LjQsDQogICAgICAgICAgICAgICAgIDQuMSwzLjcsMi44LDMuMiw1LjYpLA0KDQogIHNwZW5kaW5nX3ZhbCA9IGMoMi41LDMsMy40LDIuOCw1LjIsNC42LDQuNCw0LjcsMy44LDMuNCwzLjYsMi40LA0KICAgICAgICAgICAgICAgICAgIDIuNywzLjIsNC4xLDIuNiwyLjksNCwzLjMsMywyLjMsMi42LDQuNSwzLjcsDQogICAgICAgICAgICAgICAgICAgMi44LDMuMiwzLjMsNC4yLDMuNywzLjksMy41KSwNCg0KICBob3VzZWhvbGRfYXZnID0gYyg0LjIsNCwzLjUsNC4xLDMsMy4xLDIuOCwyLjksMy42LDMuOCwzLjcsNC41LA0KICAgICAgICAgICAgICAgICAgICA0LjMsMy45LDMuMiw0LjQsNC4xLDMuMywzLjgsNC4yLDQuNyw0LjMsMywNCiAgICAgICAgICAgICAgICAgICAgMy41LDQuNCwzLjksMy43LDMuMSwzLjYsMy40LDMuOCkNCikNCg0KIyBudW1lcmljIHZlY3RvciBleGFtcGxlDQpzYW1wbGVfeCA8LSBjKDg1MCw5MjAsMTEwMCwxMjUwLDEzMDAsMTQwMCwxNTAwLDE1NTAsMTYwMCwxNzUwLDIxMDAsODUwMCkNCg0KIyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09DQojIFNVTU1BUlkNCiMgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQ0KDQpzdW1tYXJ5KGFyZWFfZGF0YSkNCg0KIyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09DQojIE1FQU4gJiBTRA0KIyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09DQoNCm1lYW4oc2FtcGxlX3gpDQpzZChzYW1wbGVfeCkNCg0KIyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09DQojIEhJU1RPR1JBTSBCQVNFIFINCiMgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQ0KDQpoaXN0KA0KICBzYW1wbGVfeCwNCiAgYnJlYWtzID0gOCwNCiAgY29sID0gInNreWJsdWUiLA0KICBib3JkZXIgPSAid2hpdGUiLA0KICBtYWluID0gIkRpc3RyaWJ1dGlvbiBvZiBTYW1wbGUgRGF0YSIsDQogIHhsYWIgPSAiVmFsdWVzIg0KKQ0KDQojID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0NCiMgR0dQTE9UIEhJU1RPR1JBTQ0KIyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09DQoNCmxpYnJhcnkocmVzaGFwZTIpDQpsaWJyYXJ5KGdncGxvdDIpDQoNCmxvbmdfZm9ybWF0IDwtIG1lbHQoDQogIGFyZWFfZGF0YVssIGMoImluY29tZV92YWwiLCJzcGVuZGluZ192YWwiLCJob3VzZWhvbGRfYXZnIildDQopDQoNCmdncGxvdChsb25nX2Zvcm1hdCwgYWVzKHggPSB2YWx1ZSwgZmlsbCA9IHZhcmlhYmxlKSkgKw0KICBnZW9tX2hpc3RvZ3JhbSgNCiAgICBiaW5zID0gMTIsDQogICAgYWxwaGEgPSAwLjYsDQogICAgY29sb3IgPSAiYmxhY2siDQogICkgKw0KICBmYWNldF93cmFwKH52YXJpYWJsZSwgc2NhbGVzID0gImZyZWUiKSArDQogIGxhYnMoDQogICAgdGl0bGUgPSAiRGlzdHJpYnV0aW9uIG9mIEtlY2FtYXRhbiBWYXJpYWJsZXMiLA0KICAgIHggPSAiVmFsdWUiLA0KICAgIHkgPSAiRnJlcXVlbmN5Ig0KICApICsNCiAgdGhlbWVfYncoKSArDQogIHNjYWxlX2ZpbGxfYnJld2VyKHBhbGV0dGUgPSAiU2V0MiIpDQoNCmBgYA==