Visualisasi Data
Assignment Week-4
Foto Kelompok 3
1 Pendahuluan
2 Persiapan Data
data_mahasiswa <- data.frame(
ID_Mahasiswa = c("M001", "M002", "M003", "M004", "M005",
"M006", "M007", "M008", "M009", "M010",
"M011", "M012"),
Fakultas = c("Teknik", "Teknik", "Kedokteran", "Hukum", "Kedokteran",
"Hukum", "Teknik", "Hukum", "Kedokteran", "Hukum",
"Teknik", "Kedokteran"),
Nilai_UAS = c(85, 78, 92, 70, 88, 64, 94, 73, 81, 77, 90, 86),
Waktu_belajar = c(10, 8, 15, 6, 12, 4, 16, 7, 10, 9, 13, 11),
Kehadiran = c(95, 88, 98, 82, 97, 75, 99, 85, 91, 89, 96, 93),
IPK = c(3.7, 3.4, 3.9, 2.9, 3.8, 2.6, 4.0, 3.3, 3.5, 3.2, 3.8, 3.6),
Gender = c("L", "P", "L", "P", "L", "P", "L", "L", "L", "P", "P", "L"),
Semester = c(5, 4, 3, 3, 5, 6, 6, 5, 4, 4, 3, 6)
)
print (data_mahasiswa)## ID_Mahasiswa Fakultas Nilai_UAS Waktu_belajar Kehadiran IPK Gender
## 1 M001 Teknik 85 10 95 3.7 L
## 2 M002 Teknik 78 8 88 3.4 P
## 3 M003 Kedokteran 92 15 98 3.9 L
## 4 M004 Hukum 70 6 82 2.9 P
## 5 M005 Kedokteran 88 12 97 3.8 L
## 6 M006 Hukum 64 4 75 2.6 P
## 7 M007 Teknik 94 16 99 4.0 L
## 8 M008 Hukum 73 7 85 3.3 L
## 9 M009 Kedokteran 81 10 91 3.5 L
## 10 M010 Hukum 77 9 89 3.2 P
## 11 M011 Teknik 90 13 96 3.8 P
## 12 M012 Kedokteran 86 11 93 3.6 L
## Semester
## 1 5
## 2 4
## 3 3
## 4 3
## 5 5
## 6 6
## 7 6
## 8 5
## 9 4
## 10 4
## 11 3
## 12 6
3 Visualisasi data
3.0.1 Bar Chart: Rata-rata IPK per Fakultas
library(ggplot2)
ggplot(data_mahasiswa, aes(x = Fakultas, y = IPK, fill = Fakultas)) +
stat_summary(fun = mean, geom = "bar") +
labs(title = "Rata-rata IPK per Fakultas", y = "IPK Rata-rata") +
theme_minimal()3.0.2 Histogram: Distribusi Nilai UAS
ggplot(data_mahasiswa, aes(x = Nilai_UAS)) +
geom_histogram(binwidth = 5, fill = "skyblue", color = "black") +
labs(title = "Distribusi Nilai UAS", x = "Nilai UAS", y = "Frekuensi") +
theme_minimal()3.0.3 Boxplot: Distribusi Kehadiran per Fakultas
ggplot(data_mahasiswa, aes(x = Fakultas, y = Kehadiran, fill = Fakultas)) +
geom_boxplot() +
labs(title = "Distribusi Kehadiran per Fakultas", y = "Kehadiran (%)") +
theme_minimal()3.0.4 Pie Chart: Proporsi Mahasiswa per Fakultas
pie_data <- as.data.frame(table(data_mahasiswa$Fakultas))
colnames(pie_data) <- c("Fakultas", "Jumlah")
ggplot(pie_data, aes(x = "", y = Jumlah, fill = Fakultas)) +
geom_bar(stat = "identity", width = 1) +
coord_polar("y", start = 0) +
labs(title = "Proporsi Mahasiswa per Fakultas") +
theme_void()3.0.5 Scatter Plot: Waktu Belajar vs Nilai UAS
ggplot(data_mahasiswa, aes(x = Waktu_belajar, y = Nilai_UAS, color = Fakultas)) +
geom_point(size = 3) +
geom_smooth(method = "lm", se = FALSE, linetype = "dashed") +
labs(title = "Hubungan Waktu Belajar vs Nilai UAS",
x = "Waktu Belajar (jam)",
y = "Nilai UAS") +
theme_minimal()## `geom_smooth()` using formula = 'y ~ x'
3.0.6 Line Plot: Nilai UAS per Mahasiswa (tren)
ggplot(data_mahasiswa, aes(x = ID_Mahasiswa, y = Nilai_UAS, group = 1)) +
geom_line(color = "blue") +
geom_point(size = 3, color = "red") +
labs(title = "Nilai UAS per Mahasiswa", x = "ID Mahasiswa", y = "Nilai UAS") +
theme_minimal() +
theme(axis.text.x = element_text(angle = 45, hjust = 1))3.0.7 Density Plot: Estimasi distribusi IPK
ggplot(data_mahasiswa, aes(x = IPK, fill = Fakultas)) +
geom_density(alpha = 0.5) +
labs(title = "Density Plot IPK per Fakultas", x = "IPK", y = "Density") +
theme_minimal()3.0.8 Ridgeline Plot: Distribusi Nilai UAS per Fakultas
library(ggridges)
ggplot(data_mahasiswa, aes(x = Nilai_UAS, y = Fakultas, fill = Fakultas)) +
geom_density_ridges(alpha = 0.7) +
labs(title = "Ridgeline Plot Nilai UAS per Fakultas", x = "Nilai UAS", y = "Fakultas") +
theme_ridges() +
theme(legend.position = "none")## Picking joint bandwidth of 2.97
LS0tDQp0aXRsZTogIlZpc3VhbGlzYXNpIERhdGEiDQpzdWJ0aXRsZTogIkFzc2lnbm1lbnQgV2Vlay00Ig0KYXV0aG9yOg0KLSAiS2Vsb21wb2sgMyIgDQotICJOYWlmYWggRWRyaWEgQXJ0YSAoNTIyNTAwNTYpIg0KLSAiRnJpenp5IExpdGhtZW5zeWFoICg1MjI1MDA2MikiDQotICJMdWx1IE5hamxhIFNhbHNhYmlsYSAoNTIyNTAwNjkpIg0KLSAiTmFpbGEgU3lhaHJhbmkgUHV0cmkgKDUyMjUwMDcwKSINCi0gIk5pLiBNZCBBdXJvcmEgU2VrYXJuaW5ncnVtICg1MjI1MDA3MikiDQpkYXRlOiAiYHIgZm9ybWF0KFN5cy5EYXRlKCksICclQiAlZCwgJVknKWAiDQpvdXRwdXQ6DQogIHJtZGZvcm1hdHM6OnJlYWR0aGVkb3duOg0KICAgIHNlbGZfY29udGFpbmVkOiB0cnVlDQogICAgdGh1bWJuYWlsczogdHJ1ZQ0KICAgIGxpZ2h0Ym94OiB0cnVlDQogICAgZ2FsbGVyeTogdHJ1ZQ0KICAgIG51bWJlcl9zZWN0aW9uczogdHJ1ZQ0KICAgIGxpYl9kaXI6IGxpYnMNCiAgICBkZl9wcmludDogInBhZ2VkIg0KICAgIGNvZGVfZm9sZGluZzogInNob3ciDQogICAgY29kZV9kb3dubG9hZDogeWVzDQotLS0NCg0KPGNlbnRlcj4NCjxpbWcgc3JjPSJDOi9Vc2Vycy9hY2VyL0RvY3VtZW50cy9XaGF0c0FwcCBJbWFnZSAyMDI1LTEwLTE2IGF0IDE4LjQyLjA2X2Y1NGNiNzliLmpwZyIgd2lkdGg9IjMwMCI+PGJyPg0KPGI+Rm90byBLZWxvbXBvayAzPC9iPg0KPC9jZW50ZXI+DQoNCi0tLQ0KDQojIFBlbmRhaHVsdWFuDQoNCg0KDQoNCiMgUGVyc2lhcGFuIERhdGENCmBgYHtyfQ0KZGF0YV9tYWhhc2lzd2EgPC0gZGF0YS5mcmFtZSgNCiAgSURfTWFoYXNpc3dhID0gYygiTTAwMSIsICJNMDAyIiwgIk0wMDMiLCAiTTAwNCIsICJNMDA1IiwgDQogICAgICAgICAgICAgICAgICAgIk0wMDYiLCAiTTAwNyIsICJNMDA4IiwgIk0wMDkiLCAiTTAxMCIsIA0KICAgICAgICAgICAgICAgICAgICJNMDExIiwgIk0wMTIiKSwNCiAgRmFrdWx0YXMgPSBjKCJUZWtuaWsiLCAiVGVrbmlrIiwgIktlZG9rdGVyYW4iLCAiSHVrdW0iLCAiS2Vkb2t0ZXJhbiIsIA0KICAgICAgICAgICAgICAgIkh1a3VtIiwgIlRla25payIsICJIdWt1bSIsICJLZWRva3RlcmFuIiwgIkh1a3VtIiwNCiAgICAgICAgICAgICAgICJUZWtuaWsiLCAiS2Vkb2t0ZXJhbiIpLA0KICBOaWxhaV9VQVMgPSBjKDg1LCA3OCwgOTIsIDcwLCA4OCwgNjQsIDk0LCA3MywgODEsIDc3LCA5MCwgODYpLA0KICBXYWt0dV9iZWxhamFyID0gYygxMCwgOCwgMTUsIDYsIDEyLCA0LCAxNiwgNywgMTAsIDksIDEzLCAxMSksDQogIEtlaGFkaXJhbiA9IGMoOTUsIDg4LCA5OCwgODIsIDk3LCA3NSwgOTksIDg1LCA5MSwgODksIDk2LCA5MyksDQogIElQSyA9IGMoMy43LCAzLjQsIDMuOSwgMi45LCAzLjgsIDIuNiwgNC4wLCAzLjMsIDMuNSwgMy4yLCAzLjgsIDMuNiksDQogIEdlbmRlciA9IGMoIkwiLCAiUCIsICJMIiwgIlAiLCAiTCIsICJQIiwgIkwiLCAiTCIsICJMIiwgIlAiLCAiUCIsICJMIiksDQogIFNlbWVzdGVyID0gYyg1LCA0LCAzLCAzLCA1LCA2LCA2LCA1LCA0LCA0LCAzLCA2KQ0KKQ0KDQoNCnByaW50IChkYXRhX21haGFzaXN3YSkNCmBgYA0KDQojIFZpc3VhbGlzYXNpIGRhdGENCg0KIyMjIEJhciBDaGFydDogUmF0YS1yYXRhIElQSyBwZXIgRmFrdWx0YXMNCmBgYHtyfQ0KbGlicmFyeShnZ3Bsb3QyKQ0KDQpnZ3Bsb3QoZGF0YV9tYWhhc2lzd2EsIGFlcyh4ID0gRmFrdWx0YXMsIHkgPSBJUEssIGZpbGwgPSBGYWt1bHRhcykpICsNCiAgc3RhdF9zdW1tYXJ5KGZ1biA9IG1lYW4sIGdlb20gPSAiYmFyIikgKw0KICBsYWJzKHRpdGxlID0gIlJhdGEtcmF0YSBJUEsgcGVyIEZha3VsdGFzIiwgeSA9ICJJUEsgUmF0YS1yYXRhIikgKw0KICB0aGVtZV9taW5pbWFsKCkNCmBgYA0KDQoNCiMjIyBIaXN0b2dyYW06IERpc3RyaWJ1c2kgTmlsYWkgVUFTDQpgYGB7cn0NCmdncGxvdChkYXRhX21haGFzaXN3YSwgYWVzKHggPSBOaWxhaV9VQVMpKSArDQogIGdlb21faGlzdG9ncmFtKGJpbndpZHRoID0gNSwgZmlsbCA9ICJza3libHVlIiwgY29sb3IgPSAiYmxhY2siKSArDQogIGxhYnModGl0bGUgPSAiRGlzdHJpYnVzaSBOaWxhaSBVQVMiLCB4ID0gIk5pbGFpIFVBUyIsIHkgPSAiRnJla3VlbnNpIikgKw0KICB0aGVtZV9taW5pbWFsKCkNCg0KIyBUdWp1YW46IE1lbGloYXQgZGlzdHJpYnVzaSBkYXRhIG51bWVyaWsgKG5pbGFpIFVBUykNCmBgYA0KDQoNCiMjIyBCb3hwbG90OiBEaXN0cmlidXNpIEtlaGFkaXJhbiBwZXIgRmFrdWx0YXMNCmBgYHtyfQ0KZ2dwbG90KGRhdGFfbWFoYXNpc3dhLCBhZXMoeCA9IEZha3VsdGFzLCB5ID0gS2VoYWRpcmFuLCBmaWxsID0gRmFrdWx0YXMpKSArDQogIGdlb21fYm94cGxvdCgpICsNCiAgbGFicyh0aXRsZSA9ICJEaXN0cmlidXNpIEtlaGFkaXJhbiBwZXIgRmFrdWx0YXMiLCB5ID0gIktlaGFkaXJhbiAoJSkiKSArDQogIHRoZW1lX21pbmltYWwoKQ0KDQojIFR1anVhbjogTWVuZ2V0YWh1aSBwZW55ZWJhcmFuIGRhdGEgZGFuIG1lbmRldGVrc2kgb3V0bGllcg0KYGBgDQoNCg0KDQojIyMgUGllIENoYXJ0OiBQcm9wb3JzaSBNYWhhc2lzd2EgcGVyIEZha3VsdGFzDQpgYGB7cn0NCnBpZV9kYXRhIDwtIGFzLmRhdGEuZnJhbWUodGFibGUoZGF0YV9tYWhhc2lzd2EkRmFrdWx0YXMpKQ0KY29sbmFtZXMocGllX2RhdGEpIDwtIGMoIkZha3VsdGFzIiwgIkp1bWxhaCIpDQoNCmdncGxvdChwaWVfZGF0YSwgYWVzKHggPSAiIiwgeSA9IEp1bWxhaCwgZmlsbCA9IEZha3VsdGFzKSkgKw0KICBnZW9tX2JhcihzdGF0ID0gImlkZW50aXR5Iiwgd2lkdGggPSAxKSArDQogIGNvb3JkX3BvbGFyKCJ5Iiwgc3RhcnQgPSAwKSArDQogIGxhYnModGl0bGUgPSAiUHJvcG9yc2kgTWFoYXNpc3dhIHBlciBGYWt1bHRhcyIpICsNCiAgdGhlbWVfdm9pZCgpDQoNCiMgVHVqdWFuOiBNZW51bmp1a2thbiBwcm9wb3JzaSBrYXRlZ29yaSBtYWhhc2lzd2EgcGVyIGZha3VsdGFzDQpgYGANCg0KDQojIyMgU2NhdHRlciBQbG90OiBXYWt0dSBCZWxhamFyIHZzIE5pbGFpIFVBUw0KYGBge3J9DQpnZ3Bsb3QoZGF0YV9tYWhhc2lzd2EsIGFlcyh4ID0gV2FrdHVfYmVsYWphciwgeSA9IE5pbGFpX1VBUywgY29sb3IgPSBGYWt1bHRhcykpICsNCiAgZ2VvbV9wb2ludChzaXplID0gMykgKw0KICBnZW9tX3Ntb290aChtZXRob2QgPSAibG0iLCBzZSA9IEZBTFNFLCBsaW5ldHlwZSA9ICJkYXNoZWQiKSArDQogIGxhYnModGl0bGUgPSAiSHVidW5nYW4gV2FrdHUgQmVsYWphciB2cyBOaWxhaSBVQVMiLA0KICAgICAgIHggPSAiV2FrdHUgQmVsYWphciAoamFtKSIsDQogICAgICAgeSA9ICJOaWxhaSBVQVMiKSArDQogIHRoZW1lX21pbmltYWwoKQ0KDQojIFR1anVhbjogTWVsaWhhdCBodWJ1bmdhbiBhbnRhcmEgZHVhIHZhcmlhYmVsIG51bWVyaWsNCmBgYA0KDQoNCiMjIyBMaW5lIFBsb3Q6IE5pbGFpIFVBUyBwZXIgTWFoYXNpc3dhICh0cmVuKQ0KYGBge3J9DQpnZ3Bsb3QoZGF0YV9tYWhhc2lzd2EsIGFlcyh4ID0gSURfTWFoYXNpc3dhLCB5ID0gTmlsYWlfVUFTLCBncm91cCA9IDEpKSArDQogIGdlb21fbGluZShjb2xvciA9ICJibHVlIikgKw0KICBnZW9tX3BvaW50KHNpemUgPSAzLCBjb2xvciA9ICJyZWQiKSArDQogIGxhYnModGl0bGUgPSAiTmlsYWkgVUFTIHBlciBNYWhhc2lzd2EiLCB4ID0gIklEIE1haGFzaXN3YSIsIHkgPSAiTmlsYWkgVUFTIikgKw0KICB0aGVtZV9taW5pbWFsKCkgKw0KICB0aGVtZShheGlzLnRleHQueCA9IGVsZW1lbnRfdGV4dChhbmdsZSA9IDQ1LCBoanVzdCA9IDEpKQ0KDQojIFR1anVhbjogTWVuYW1waWxrYW4gdHJlbi91cnV0YW4gZGF0YSBuaWxhaSBwZXIgbWFoYXNpc3dhDQpgYGANCg0KDQoNCiMjIyBEZW5zaXR5IFBsb3Q6IEVzdGltYXNpIGRpc3RyaWJ1c2kgSVBLDQpgYGB7cn0NCmdncGxvdChkYXRhX21haGFzaXN3YSwgYWVzKHggPSBJUEssIGZpbGwgPSBGYWt1bHRhcykpICsNCiAgZ2VvbV9kZW5zaXR5KGFscGhhID0gMC41KSArDQogIGxhYnModGl0bGUgPSAiRGVuc2l0eSBQbG90IElQSyBwZXIgRmFrdWx0YXMiLCB4ID0gIklQSyIsIHkgPSAiRGVuc2l0eSIpICsNCiAgdGhlbWVfbWluaW1hbCgpDQoNCiMgVHVqdWFuOiBNZW5nZXN0aW1hc2kgZGlzdHJpYnVzaSBwcm9iYWJpbGl0YXMgdmFyaWFiZWwgbnVtZXJpaw0KYGBgDQoNCg0KIyMjICBSaWRnZWxpbmUgUGxvdDogRGlzdHJpYnVzaSBOaWxhaSBVQVMgcGVyIEZha3VsdGFzDQpgYGB7cn0NCmxpYnJhcnkoZ2dyaWRnZXMpDQoNCmdncGxvdChkYXRhX21haGFzaXN3YSwgYWVzKHggPSBOaWxhaV9VQVMsIHkgPSBGYWt1bHRhcywgZmlsbCA9IEZha3VsdGFzKSkgKw0KICBnZW9tX2RlbnNpdHlfcmlkZ2VzKGFscGhhID0gMC43KSArDQogIGxhYnModGl0bGUgPSAiUmlkZ2VsaW5lIFBsb3QgTmlsYWkgVUFTIHBlciBGYWt1bHRhcyIsIHggPSAiTmlsYWkgVUFTIiwgeSA9ICJGYWt1bHRhcyIpICsNCiAgdGhlbWVfcmlkZ2VzKCkgKw0KICB0aGVtZShsZWdlbmQucG9zaXRpb24gPSAibm9uZSIpDQoNCiMgVHVqdWFuOiBNZW1iYW5kaW5na2FuIGRpc3RyaWJ1c2kgYmViZXJhcGEga2Vsb21wb2vCoHNla2FsaWd1cw0KYGBg