/Users/vinhnguyen/Library/CloudStorage/OneDrive-danangcity/DAU-NCKH/ĐỀ TÀI CẤP TRƯỜNG 2025-CĐR/codebook_JD.xlsx
library(readxl)
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)
codebook <- read_excel("/Users/vinhnguyen/Library/CloudStorage/OneDrive-danangcity/DAU-NCKH/ĐỀ TÀI CẤP TRƯỜNG 2025-CĐR/codebook_JD.xlsx")
head(codebook)
## # A tibble: 6 × 115
## `Nhóm Năng lực (Themes)` Code Nodes JD_001 JD_002 JD_003 JD_004 JD_005 JD_006
## <chr> <chr> <chr> <dbl> <dbl> <dbl> <dbl> <dbl> <dbl>
## 1 [RQ2] Năng lực Truyền t… TR01 Nghi… 0 0 1 0 0 0
## 2 [RQ2] Năng lực Truyền t… TR02 Nghi… 0 1 0 0 1 1
## 3 [RQ2] Năng lực Truyền t… TR03 Nghi… 0 0 0 0 0 0
## 4 [RQ2] Năng lực Truyền t… TR04 Nghi… 0 1 0 0 0 0
## 5 [RQ2] Năng lực Truyền t… TR05 Giao… 1 1 1 0 1 1
## 6 [RQ2] Năng lực Truyền t… TR06 Làm … 1 1 1 1 1 1
## # ℹ 106 more variables: JD_007 <dbl>, JD_008 <dbl>, JD_009 <dbl>, JD_010 <dbl>,
## # JD_011 <dbl>, JD_012 <dbl>, JD_013 <dbl>, JD_014 <dbl>, JD_015 <dbl>,
## # JD_016 <dbl>, JD_017 <dbl>, JD_018 <dbl>, JD_019 <dbl>, JD_020 <dbl>,
## # JD_021 <dbl>, JD_022 <dbl>, JD_023 <dbl>, JD_024 <dbl>, JD_025 <dbl>,
## # JD_026 <dbl>, JD_027 <dbl>, JD_028 <dbl>, JD_029 <dbl>, JD_030 <dbl>,
## # JD_031 <dbl>, JD_032 <dbl>, JD_033 <dbl>, JD_034 <dbl>, JD_035 <dbl>,
## # JD_036 <dbl>, JD_037 <dbl>, JD_038 <dbl>, JD_039 <dbl>, JD_040 <dbl>, …
Bước 2: Chuẩn hoá tên cột
colnames(codebook)
## [1] "Nhóm Năng lực (Themes)" "Code" "Nodes"
## [4] "JD_001" "JD_002" "JD_003"
## [7] "JD_004" "JD_005" "JD_006"
## [10] "JD_007" "JD_008" "JD_009"
## [13] "JD_010" "JD_011" "JD_012"
## [16] "JD_013" "JD_014" "JD_015"
## [19] "JD_016" "JD_017" "JD_018"
## [22] "JD_019" "JD_020" "JD_021"
## [25] "JD_022" "JD_023" "JD_024"
## [28] "JD_025" "JD_026" "JD_027"
## [31] "JD_028" "JD_029" "JD_030"
## [34] "JD_031" "JD_032" "JD_033"
## [37] "JD_034" "JD_035" "JD_036"
## [40] "JD_037" "JD_038" "JD_039"
## [43] "JD_040" "JD_041" "JD_042"
## [46] "JD_043" "JD_044" "JD_045"
## [49] "JD_046" "JD_047" "JD_048"
## [52] "JD_049" "JD_050" "JD_051"
## [55] "JD_052" "JD_053" "JD_054"
## [58] "JD_055" "JD_056" "JD_057"
## [61] "JD_058" "JD_059" "JD_060"
## [64] "JD_061" "JD_062" "JD_063"
## [67] "JD_064" "JD_065" "JD_066"
## [70] "JD_067" "JD_068" "JD_069"
## [73] "JD_070" "JD_071" "JD_072"
## [76] "JD_073" "JD_074" "JD_075"
## [79] "JD_076" "JD_077" "JD_078"
## [82] "JD_079" "JD_080" "JD_081"
## [85] "JD_082" "JD_083" "JD_084"
## [88] "JD_085" "JD_086" "JD_087"
## [91] "JD_088" "JD_089" "JD_090"
## [94] "JD_091" "JD_092" "JD_093"
## [97] "JD_094" "JD_095" "JD_096"
## [100] "JD_097" "JD_098" "JD_099"
## [103] "JD_100" "JD_101" "JD_102"
## [106] "JD_103" "JD_104" "JD_105"
## [109] "JD_106" "JD_107" "JD_108"
## [112] "JD_109" "JD_110" "Frequency"
## [115] "Percentage%"
jd_cols <- grep("^JD_", colnames(codebook), value = TRUE)
codebook <- codebook %>%
mutate(Freq_check = rowSums(select(., all_of(jd_cols))))
sum(codebook$Freq_check == codebook$Frequency)
## [1] 26
TÍNH IDI
codebook <- codebook %>%
mutate(IDI = Freq_check)
PHÂN TÂNG NHU CẦU
codebook <- codebook %>%
mutate(Level = case_when(
IDI >= 66 ~ "High",
IDI >= 33 ~ "Medium",
TRUE ~ "Low"
))
MAP NHÓM (TR – ST – ES – IN)
codebook <- codebook %>%
mutate(Group = case_when(
startsWith(Code, "TR") ~ "TR – Năng lực nghề",
startsWith(Code, "ST") ~ "ST – Công nghệ",
startsWith(Code, "ES") ~ "ESG – Bền vững",
startsWith(Code, "IN") ~ "IN – Điều kiện đầu vào"
))
TẠO DATA FINAL CHUẨN
final_table <- codebook %>%
select(Code, Nodes, IDI, Level, Group)
final_table
## # A tibble: 26 × 5
## Code Nodes IDI Level Group
## <chr> <chr> <dbl> <chr> <chr>
## 1 TR01 Nghiệp vụ Tiền sảnh & Chăm sóc KH (FO) 44 Medium TR – Nă…
## 2 TR02 Nghiệp vụ Ẩm thực & Pha chế (F&B) 25 Low TR – Nă…
## 3 TR03 Nghiệp vụ Buồng phòng & Không gian công cộng (HK) 17 Low TR – Nă…
## 4 TR04 Nghiệp vụ Kinh doanh & Sự kiện (Sales/MICE) 14 Low TR – Nă…
## 5 TR05 Giao tiếp, Đàm phán & Lắng nghe 94 High TR – Nă…
## 6 TR06 Làm việc nhóm & Phối hợp liên bộ phận 94 High TR – Nă…
## 7 TR07 Giải quyết vấn đề & Linh hoạt 74 High TR – Nă…
## 8 TR08 Giám sát, Đào tạo & Tổ chức công việc 31 Low TR – Nă…
## 9 TR09 Lập kế hoạch & Quản trị doanh thu/chi phí 20 Low TR – Nă…
## 10 TR10 Định hướng khách hàng & Tinh thần phục vụ 94 High TR – Nă…
## # ℹ 16 more rows
#TRỰC QUAN HOÁ
#1.Vẽ biểu đồ Lollipop chart
ggplot(codebook,
aes(x = reorder(Nodes, IDI),
y = IDI,
color = Group)) +
geom_point(size = 3) +
geom_segment(aes(xend = Nodes, y = 0, yend = IDI)) +
coord_flip()
#2.Biểu đồ Level (RẤT QUAN TRỌNG)
ggplot(codebook,
aes(x = reorder(Nodes, IDI),
y = IDI,
fill = Level)) +
geom_col() +
coord_flip()
#3.VẼ BIỂU ĐỒ CHO TỪNG NĂNG LỰC CỤ THÊ:
codebook <- codebook %>%
mutate(Group = case_when(
startsWith(Code, "TR") ~ "TR – Năng lực nghề",
startsWith(Code, "ST") ~ "ST – Công nghệ",
startsWith(Code, "ES") ~ "ESG – Bền vững",
startsWith(Code, "IN") ~ "IN – Điều kiện đầu vào"
))
##3.1. Năng lực TR
TR_data <- codebook %>%
filter(Group == "TR – Năng lực nghề")
ggplot(TR_data,
aes(x = reorder(Nodes, IDI), y = IDI)) +
geom_col(fill = "#9C4ECC") +
coord_flip() +
labs(
title = "Mức độ nhu cầu năng lực – Nhóm TR (Năng lực nghề nghiệp)",
x = "Năng lực",
y = "IDI (số tin tuyển dụng)"
) +
theme_minimal()
##3.2. Năng lực ST
ST_data <- codebook %>%
filter(Group == "ST – Công nghệ")
ggplot(ST_data,
aes(x = reorder(Nodes, IDI), y = IDI)) +
geom_col(fill = "#17A2B8") +
coord_flip() +
labs(
title = "Mức độ nhu cầu năng lực – Nhóm ST (Công nghệ & Số hóa)",
x = "Năng lực",
y = "IDI (số tin tuyển dụng)"
) +
theme_minimal()
##3.3. Năng lực ESG
ES_data <- codebook %>%
filter(Group == "ESG – Bền vững")
ggplot(ES_data,
aes(x = reorder(Nodes, IDI), y = IDI)) +
geom_col(fill = "#E63946") +
coord_flip() +
labs(
title = "Mức độ nhu cầu năng lực – Nhóm ESG & Phát triển bền vững",
x = "Năng lực",
y = "IDI (số tin tuyển dụng)"
) +
theme_minimal()
##3.4. Điều kiện đầu vào IN
IN_data <- codebook %>%
filter(Group == "IN – Điều kiện đầu vào")
ggplot(IN_data,
aes(x = reorder(Nodes, IDI), y = IDI)) +
geom_col(fill = "#2CA02C") +
coord_flip() +
labs(
title = "Yêu cầu đầu vào trong tuyển dụng – Nhóm IN",
x = "Yêu cầu",
y = "IDI (số tin tuyển dụng)"
) +
theme_minimal()
ggsave("TR_chart.png", width = 8, height = 6)
ggsave("ST_chart.png", width = 8, height = 6)
ggsave("ESG_chart.png", width = 8, height = 6)
ggsave("IN_chart.png", width = 8, height = 6)
#.BIỂU ĐỒ 1 – PHÂN TẦNG NHU CẦU (BẮT BUỘC)
ggplot(codebook,
aes(x = reorder(Nodes, IDI),
y = IDI,
fill = Level)) +
geom_col() +
coord_flip() +
labs(title = "Phân tầng mức độ nhu cầu năng lực (IDA Level)",
fill = "Mức độ nhu cầu")
#.BIỂU ĐỒ 2 – PHÂN BỐ IDI THEO NHÓM (RẤT NÊN CÓ)
ggplot(codebook,
aes(x = IDI,
fill = Group)) +
geom_histogram(binwidth = 10, alpha = 0.6, position = "identity") +
labs(title = "Phân bố IDI theo nhóm năng lực")
#.BIỂU ĐỒ NÂNG CAO (TÙY CHỌN – KHÔNG BẮT BUỘC) ##.Heatmap IDI (rất mạnh nếu muốn nâng level)
ggplot(codebook,
aes(x = Group,
y = reorder(Nodes, IDI),
fill = IDI)) +
geom_tile() +
scale_fill_gradient(low = "white", high = "blue")
##.Boxplot theo nhóm
ggplot(codebook,
aes(x = Group, y = IDI)) +
geom_boxplot()
#.LƯU FILE
pdf("All_Group_Charts.pdf", width = 10, height = 7)
print(
ggplot(TR_data, aes(x = reorder(Nodes, IDI), y = IDI)) +
geom_col(fill = "#9C4ECC") + coord_flip()
)
## Warning in grid.Call.graphics(C_text, as.graphicsAnnot(x$label), x$x, x$y, :
## conversion failure on 'Nghiệp vụ Kinh doanh & Sự kiện (Sales/MICE)' in
## 'mbcsToSbcs': for ệ (U+1EC7)
## Warning in grid.Call.graphics(C_text, as.graphicsAnnot(x$label), x$x, x$y, :
## conversion failure on 'Nghiệp vụ Kinh doanh & Sự kiện (Sales/MICE)' in
## 'mbcsToSbcs': for ụ (U+1EE5)
## Warning in grid.Call.graphics(C_text, as.graphicsAnnot(x$label), x$x, x$y, :
## conversion failure on 'Nghiệp vụ Kinh doanh & Sự kiện (Sales/MICE)' in
## 'mbcsToSbcs': for ự (U+1EF1)
## Warning in grid.Call.graphics(C_text, as.graphicsAnnot(x$label), x$x, x$y, :
## conversion failure on 'Nghiệp vụ Kinh doanh & Sự kiện (Sales/MICE)' in
## 'mbcsToSbcs': for ệ (U+1EC7)
## Warning in grid.Call.graphics(C_text, as.graphicsAnnot(x$label), x$x, x$y, :
## conversion failure on 'Nghiệp vụ Buồng phòng & Không gian công cộng (HK)' in
## 'mbcsToSbcs': for ệ (U+1EC7)
## Warning in grid.Call.graphics(C_text, as.graphicsAnnot(x$label), x$x, x$y, :
## conversion failure on 'Nghiệp vụ Buồng phòng & Không gian công cộng (HK)' in
## 'mbcsToSbcs': for ụ (U+1EE5)
## Warning in grid.Call.graphics(C_text, as.graphicsAnnot(x$label), x$x, x$y, :
## conversion failure on 'Nghiệp vụ Buồng phòng & Không gian công cộng (HK)' in
## 'mbcsToSbcs': for ồ (U+1ED3)
## Warning in grid.Call.graphics(C_text, as.graphicsAnnot(x$label), x$x, x$y, :
## conversion failure on 'Nghiệp vụ Buồng phòng & Không gian công cộng (HK)' in
## 'mbcsToSbcs': for ộ (U+1ED9)
## Warning in grid.Call.graphics(C_text, as.graphicsAnnot(x$label), x$x, x$y, :
## conversion failure on 'Lập kế hoạch & Quản trị doanh thu/chi phí' in
## 'mbcsToSbcs': for ậ (U+1EAD)
## Warning in grid.Call.graphics(C_text, as.graphicsAnnot(x$label), x$x, x$y, :
## conversion failure on 'Lập kế hoạch & Quản trị doanh thu/chi phí' in
## 'mbcsToSbcs': for ế (U+1EBF)
## Warning in grid.Call.graphics(C_text, as.graphicsAnnot(x$label), x$x, x$y, :
## conversion failure on 'Lập kế hoạch & Quản trị doanh thu/chi phí' in
## 'mbcsToSbcs': for ạ (U+1EA1)
## Warning in grid.Call.graphics(C_text, as.graphicsAnnot(x$label), x$x, x$y, :
## conversion failure on 'Lập kế hoạch & Quản trị doanh thu/chi phí' in
## 'mbcsToSbcs': for ả (U+1EA3)
## Warning in grid.Call.graphics(C_text, as.graphicsAnnot(x$label), x$x, x$y, :
## conversion failure on 'Lập kế hoạch & Quản trị doanh thu/chi phí' in
## 'mbcsToSbcs': for ị (U+1ECB)
## Warning in grid.Call.graphics(C_text, as.graphicsAnnot(x$label), x$x, x$y, :
## conversion failure on 'Chịu áp lực & Quản lý thời gian' in 'mbcsToSbcs': for ị
## (U+1ECB)
## Warning in grid.Call.graphics(C_text, as.graphicsAnnot(x$label), x$x, x$y, :
## conversion failure on 'Chịu áp lực & Quản lý thời gian' in 'mbcsToSbcs': for ự
## (U+1EF1)
## Warning in grid.Call.graphics(C_text, as.graphicsAnnot(x$label), x$x, x$y, :
## conversion failure on 'Chịu áp lực & Quản lý thời gian' in 'mbcsToSbcs': for ả
## (U+1EA3)
## Warning in grid.Call.graphics(C_text, as.graphicsAnnot(x$label), x$x, x$y, :
## conversion failure on 'Chịu áp lực & Quản lý thời gian' in 'mbcsToSbcs': for ờ
## (U+1EDD)
## Warning in grid.Call.graphics(C_text, as.graphicsAnnot(x$label), x$x, x$y, :
## conversion failure on 'Nghiệp vụ Ẩm thực & Pha chế (F&B)' in 'mbcsToSbcs': for
## ệ (U+1EC7)
## Warning in grid.Call.graphics(C_text, as.graphicsAnnot(x$label), x$x, x$y, :
## conversion failure on 'Nghiệp vụ Ẩm thực & Pha chế (F&B)' in 'mbcsToSbcs': for
## ụ (U+1EE5)
## Warning in grid.Call.graphics(C_text, as.graphicsAnnot(x$label), x$x, x$y, :
## conversion failure on 'Nghiệp vụ Ẩm thực & Pha chế (F&B)' in 'mbcsToSbcs': for
## Ẩ (U+1EA8)
## Warning in grid.Call.graphics(C_text, as.graphicsAnnot(x$label), x$x, x$y, :
## conversion failure on 'Nghiệp vụ Ẩm thực & Pha chế (F&B)' in 'mbcsToSbcs': for
## ự (U+1EF1)
## Warning in grid.Call.graphics(C_text, as.graphicsAnnot(x$label), x$x, x$y, :
## conversion failure on 'Nghiệp vụ Ẩm thực & Pha chế (F&B)' in 'mbcsToSbcs': for
## ế (U+1EBF)
## Warning in grid.Call.graphics(C_text, as.graphicsAnnot(x$label), x$x, x$y, :
## conversion failure on 'Giám sát, Đào tạo & Tổ chức công việc' in 'mbcsToSbcs':
## for Đ (U+0110)
## Warning in grid.Call.graphics(C_text, as.graphicsAnnot(x$label), x$x, x$y, :
## conversion failure on 'Giám sát, Đào tạo & Tổ chức công việc' in 'mbcsToSbcs':
## for ạ (U+1EA1)
## Warning in grid.Call.graphics(C_text, as.graphicsAnnot(x$label), x$x, x$y, :
## conversion failure on 'Giám sát, Đào tạo & Tổ chức công việc' in 'mbcsToSbcs':
## for ổ (U+1ED5)
## Warning in grid.Call.graphics(C_text, as.graphicsAnnot(x$label), x$x, x$y, :
## conversion failure on 'Giám sát, Đào tạo & Tổ chức công việc' in 'mbcsToSbcs':
## for ứ (U+1EE9)
## Warning in grid.Call.graphics(C_text, as.graphicsAnnot(x$label), x$x, x$y, :
## conversion failure on 'Giám sát, Đào tạo & Tổ chức công việc' in 'mbcsToSbcs':
## for ệ (U+1EC7)
## Warning in grid.Call.graphics(C_text, as.graphicsAnnot(x$label), x$x, x$y, :
## conversion failure on 'Tác phong chuyên nghiệp & Đạo đức nghề' in 'mbcsToSbcs':
## for ệ (U+1EC7)
## Warning in grid.Call.graphics(C_text, as.graphicsAnnot(x$label), x$x, x$y, :
## conversion failure on 'Tác phong chuyên nghiệp & Đạo đức nghề' in 'mbcsToSbcs':
## for Đ (U+0110)
## Warning in grid.Call.graphics(C_text, as.graphicsAnnot(x$label), x$x, x$y, :
## conversion failure on 'Tác phong chuyên nghiệp & Đạo đức nghề' in 'mbcsToSbcs':
## for ạ (U+1EA1)
## Warning in grid.Call.graphics(C_text, as.graphicsAnnot(x$label), x$x, x$y, :
## conversion failure on 'Tác phong chuyên nghiệp & Đạo đức nghề' in 'mbcsToSbcs':
## for đ (U+0111)
## Warning in grid.Call.graphics(C_text, as.graphicsAnnot(x$label), x$x, x$y, :
## conversion failure on 'Tác phong chuyên nghiệp & Đạo đức nghề' in 'mbcsToSbcs':
## for ứ (U+1EE9)
## Warning in grid.Call.graphics(C_text, as.graphicsAnnot(x$label), x$x, x$y, :
## conversion failure on 'Tác phong chuyên nghiệp & Đạo đức nghề' in 'mbcsToSbcs':
## for ề (U+1EC1)
## Warning in grid.Call.graphics(C_text, as.graphicsAnnot(x$label), x$x, x$y, :
## conversion failure on 'Nghiệp vụ Tiền sảnh & Chăm sóc KH (FO)' in 'mbcsToSbcs':
## for ệ (U+1EC7)
## Warning in grid.Call.graphics(C_text, as.graphicsAnnot(x$label), x$x, x$y, :
## conversion failure on 'Nghiệp vụ Tiền sảnh & Chăm sóc KH (FO)' in 'mbcsToSbcs':
## for ụ (U+1EE5)
## Warning in grid.Call.graphics(C_text, as.graphicsAnnot(x$label), x$x, x$y, :
## conversion failure on 'Nghiệp vụ Tiền sảnh & Chăm sóc KH (FO)' in 'mbcsToSbcs':
## for ề (U+1EC1)
## Warning in grid.Call.graphics(C_text, as.graphicsAnnot(x$label), x$x, x$y, :
## conversion failure on 'Nghiệp vụ Tiền sảnh & Chăm sóc KH (FO)' in 'mbcsToSbcs':
## for ả (U+1EA3)
## Warning in grid.Call.graphics(C_text, as.graphicsAnnot(x$label), x$x, x$y, :
## conversion failure on 'Nghiệp vụ Tiền sảnh & Chăm sóc KH (FO)' in 'mbcsToSbcs':
## for ă (U+0103)
## Warning in grid.Call.graphics(C_text, as.graphicsAnnot(x$label), x$x, x$y, :
## conversion failure on 'Giải quyết vấn đề & Linh hoạt' in 'mbcsToSbcs': for ả
## (U+1EA3)
## Warning in grid.Call.graphics(C_text, as.graphicsAnnot(x$label), x$x, x$y, :
## conversion failure on 'Giải quyết vấn đề & Linh hoạt' in 'mbcsToSbcs': for ế
## (U+1EBF)
## Warning in grid.Call.graphics(C_text, as.graphicsAnnot(x$label), x$x, x$y, :
## conversion failure on 'Giải quyết vấn đề & Linh hoạt' in 'mbcsToSbcs': for ấ
## (U+1EA5)
## Warning in grid.Call.graphics(C_text, as.graphicsAnnot(x$label), x$x, x$y, :
## conversion failure on 'Giải quyết vấn đề & Linh hoạt' in 'mbcsToSbcs': for đ
## (U+0111)
## Warning in grid.Call.graphics(C_text, as.graphicsAnnot(x$label), x$x, x$y, :
## conversion failure on 'Giải quyết vấn đề & Linh hoạt' in 'mbcsToSbcs': for ề
## (U+1EC1)
## Warning in grid.Call.graphics(C_text, as.graphicsAnnot(x$label), x$x, x$y, :
## conversion failure on 'Giải quyết vấn đề & Linh hoạt' in 'mbcsToSbcs': for ạ
## (U+1EA1)
## Warning in grid.Call.graphics(C_text, as.graphicsAnnot(x$label), x$x, x$y, :
## conversion failure on 'Định hướng khách hàng & Tinh thần phục vụ' in
## 'mbcsToSbcs': for Đ (U+0110)
## Warning in grid.Call.graphics(C_text, as.graphicsAnnot(x$label), x$x, x$y, :
## conversion failure on 'Định hướng khách hàng & Tinh thần phục vụ' in
## 'mbcsToSbcs': for ị (U+1ECB)
## Warning in grid.Call.graphics(C_text, as.graphicsAnnot(x$label), x$x, x$y, :
## conversion failure on 'Định hướng khách hàng & Tinh thần phục vụ' in
## 'mbcsToSbcs': for ư (U+01B0)
## Warning in grid.Call.graphics(C_text, as.graphicsAnnot(x$label), x$x, x$y, :
## conversion failure on 'Định hướng khách hàng & Tinh thần phục vụ' in
## 'mbcsToSbcs': for ớ (U+1EDB)
## Warning in grid.Call.graphics(C_text, as.graphicsAnnot(x$label), x$x, x$y, :
## conversion failure on 'Định hướng khách hàng & Tinh thần phục vụ' in
## 'mbcsToSbcs': for ầ (U+1EA7)
## Warning in grid.Call.graphics(C_text, as.graphicsAnnot(x$label), x$x, x$y, :
## conversion failure on 'Định hướng khách hàng & Tinh thần phục vụ' in
## 'mbcsToSbcs': for ụ (U+1EE5)
## Warning in grid.Call.graphics(C_text, as.graphicsAnnot(x$label), x$x, x$y, :
## conversion failure on 'Định hướng khách hàng & Tinh thần phục vụ' in
## 'mbcsToSbcs': for ụ (U+1EE5)
## Warning in grid.Call.graphics(C_text, as.graphicsAnnot(x$label), x$x, x$y, :
## conversion failure on 'Giao tiếp, Đàm phán & Lắng nghe' in 'mbcsToSbcs': for ế
## (U+1EBF)
## Warning in grid.Call.graphics(C_text, as.graphicsAnnot(x$label), x$x, x$y, :
## conversion failure on 'Giao tiếp, Đàm phán & Lắng nghe' in 'mbcsToSbcs': for Đ
## (U+0110)
## Warning in grid.Call.graphics(C_text, as.graphicsAnnot(x$label), x$x, x$y, :
## conversion failure on 'Giao tiếp, Đàm phán & Lắng nghe' in 'mbcsToSbcs': for ắ
## (U+1EAF)
## Warning in grid.Call.graphics(C_text, as.graphicsAnnot(x$label), x$x, x$y, :
## conversion failure on 'Làm việc nhóm & Phối hợp liên bộ phận' in 'mbcsToSbcs':
## for ệ (U+1EC7)
## Warning in grid.Call.graphics(C_text, as.graphicsAnnot(x$label), x$x, x$y, :
## conversion failure on 'Làm việc nhóm & Phối hợp liên bộ phận' in 'mbcsToSbcs':
## for ố (U+1ED1)
## Warning in grid.Call.graphics(C_text, as.graphicsAnnot(x$label), x$x, x$y, :
## conversion failure on 'Làm việc nhóm & Phối hợp liên bộ phận' in 'mbcsToSbcs':
## for ợ (U+1EE3)
## Warning in grid.Call.graphics(C_text, as.graphicsAnnot(x$label), x$x, x$y, :
## conversion failure on 'Làm việc nhóm & Phối hợp liên bộ phận' in 'mbcsToSbcs':
## for ộ (U+1ED9)
## Warning in grid.Call.graphics(C_text, as.graphicsAnnot(x$label), x$x, x$y, :
## conversion failure on 'Làm việc nhóm & Phối hợp liên bộ phận' in 'mbcsToSbcs':
## for ậ (U+1EAD)
print(
ggplot(ST_data, aes(x = reorder(Nodes, IDI), y = IDI)) +
geom_col(fill = "#17A2B8") + coord_flip()
)
## Warning in grid.Call.graphics(C_text, as.graphicsAnnot(x$label), x$x, x$y, :
## conversion failure on 'Tương tác AI & Hệ thống tự động' in 'mbcsToSbcs': for ư
## (U+01B0)
## Warning in grid.Call.graphics(C_text, as.graphicsAnnot(x$label), x$x, x$y, :
## conversion failure on 'Tương tác AI & Hệ thống tự động' in 'mbcsToSbcs': for ơ
## (U+01A1)
## Warning in grid.Call.graphics(C_text, as.graphicsAnnot(x$label), x$x, x$y, :
## conversion failure on 'Tương tác AI & Hệ thống tự động' in 'mbcsToSbcs': for ệ
## (U+1EC7)
## Warning in grid.Call.graphics(C_text, as.graphicsAnnot(x$label), x$x, x$y, :
## conversion failure on 'Tương tác AI & Hệ thống tự động' in 'mbcsToSbcs': for ố
## (U+1ED1)
## Warning in grid.Call.graphics(C_text, as.graphicsAnnot(x$label), x$x, x$y, :
## conversion failure on 'Tương tác AI & Hệ thống tự động' in 'mbcsToSbcs': for ự
## (U+1EF1)
## Warning in grid.Call.graphics(C_text, as.graphicsAnnot(x$label), x$x, x$y, :
## conversion failure on 'Tương tác AI & Hệ thống tự động' in 'mbcsToSbcs': for đ
## (U+0111)
## Warning in grid.Call.graphics(C_text, as.graphicsAnnot(x$label), x$x, x$y, :
## conversion failure on 'Tương tác AI & Hệ thống tự động' in 'mbcsToSbcs': for ộ
## (U+1ED9)
## Warning in grid.Call.graphics(C_text, as.graphicsAnnot(x$label), x$x, x$y, :
## conversion failure on 'Marketing kỹ thuật số và thương mại điện tử' in
## 'mbcsToSbcs': for ỹ (U+1EF9)
## Warning in grid.Call.graphics(C_text, as.graphicsAnnot(x$label), x$x, x$y, :
## conversion failure on 'Marketing kỹ thuật số và thương mại điện tử' in
## 'mbcsToSbcs': for ậ (U+1EAD)
## Warning in grid.Call.graphics(C_text, as.graphicsAnnot(x$label), x$x, x$y, :
## conversion failure on 'Marketing kỹ thuật số và thương mại điện tử' in
## 'mbcsToSbcs': for ố (U+1ED1)
## Warning in grid.Call.graphics(C_text, as.graphicsAnnot(x$label), x$x, x$y, :
## conversion failure on 'Marketing kỹ thuật số và thương mại điện tử' in
## 'mbcsToSbcs': for ư (U+01B0)
## Warning in grid.Call.graphics(C_text, as.graphicsAnnot(x$label), x$x, x$y, :
## conversion failure on 'Marketing kỹ thuật số và thương mại điện tử' in
## 'mbcsToSbcs': for ơ (U+01A1)
## Warning in grid.Call.graphics(C_text, as.graphicsAnnot(x$label), x$x, x$y, :
## conversion failure on 'Marketing kỹ thuật số và thương mại điện tử' in
## 'mbcsToSbcs': for ạ (U+1EA1)
## Warning in grid.Call.graphics(C_text, as.graphicsAnnot(x$label), x$x, x$y, :
## conversion failure on 'Marketing kỹ thuật số và thương mại điện tử' in
## 'mbcsToSbcs': for đ (U+0111)
## Warning in grid.Call.graphics(C_text, as.graphicsAnnot(x$label), x$x, x$y, :
## conversion failure on 'Marketing kỹ thuật số và thương mại điện tử' in
## 'mbcsToSbcs': for ệ (U+1EC7)
## Warning in grid.Call.graphics(C_text, as.graphicsAnnot(x$label), x$x, x$y, :
## conversion failure on 'Marketing kỹ thuật số và thương mại điện tử' in
## 'mbcsToSbcs': for ử (U+1EED)
## Warning in grid.Call.graphics(C_text, as.graphicsAnnot(x$label), x$x, x$y, :
## conversion failure on 'Phân tích dữ liệu & Báo cáo' in 'mbcsToSbcs': for ữ
## (U+1EEF)
## Warning in grid.Call.graphics(C_text, as.graphicsAnnot(x$label), x$x, x$y, :
## conversion failure on 'Phân tích dữ liệu & Báo cáo' in 'mbcsToSbcs': for ệ
## (U+1EC7)
## Warning in grid.Call.graphics(C_text, as.graphicsAnnot(x$label), x$x, x$y, :
## conversion failure on 'Vận hành hệ thống quản lý (PMS/POS/CRM)' in
## 'mbcsToSbcs': for ậ (U+1EAD)
## Warning in grid.Call.graphics(C_text, as.graphicsAnnot(x$label), x$x, x$y, :
## conversion failure on 'Vận hành hệ thống quản lý (PMS/POS/CRM)' in
## 'mbcsToSbcs': for ệ (U+1EC7)
## Warning in grid.Call.graphics(C_text, as.graphicsAnnot(x$label), x$x, x$y, :
## conversion failure on 'Vận hành hệ thống quản lý (PMS/POS/CRM)' in
## 'mbcsToSbcs': for ố (U+1ED1)
## Warning in grid.Call.graphics(C_text, as.graphicsAnnot(x$label), x$x, x$y, :
## conversion failure on 'Vận hành hệ thống quản lý (PMS/POS/CRM)' in
## 'mbcsToSbcs': for ả (U+1EA3)
## Warning in grid.Call.graphics(C_text, as.graphicsAnnot(x$label), x$x, x$y, :
## conversion failure on 'Tin học văn phòng & tác vụ hệ thống' in 'mbcsToSbcs':
## for ọ (U+1ECD)
## Warning in grid.Call.graphics(C_text, as.graphicsAnnot(x$label), x$x, x$y, :
## conversion failure on 'Tin học văn phòng & tác vụ hệ thống' in 'mbcsToSbcs':
## for ă (U+0103)
## Warning in grid.Call.graphics(C_text, as.graphicsAnnot(x$label), x$x, x$y, :
## conversion failure on 'Tin học văn phòng & tác vụ hệ thống' in 'mbcsToSbcs':
## for ụ (U+1EE5)
## Warning in grid.Call.graphics(C_text, as.graphicsAnnot(x$label), x$x, x$y, :
## conversion failure on 'Tin học văn phòng & tác vụ hệ thống' in 'mbcsToSbcs':
## for ệ (U+1EC7)
## Warning in grid.Call.graphics(C_text, as.graphicsAnnot(x$label), x$x, x$y, :
## conversion failure on 'Tin học văn phòng & tác vụ hệ thống' in 'mbcsToSbcs':
## for ố (U+1ED1)
print(
ggplot(ES_data, aes(x = reorder(Nodes, IDI), y = IDI)) +
geom_col(fill = "#E63946") + coord_flip()
)
## Warning in grid.Call.graphics(C_text, as.graphicsAnnot(x$label), x$x, x$y, :
## conversion failure on 'ESG & Khách sạn xanh' in 'mbcsToSbcs': for ạ (U+1EA1)
## Warning in grid.Call.graphics(C_text, as.graphicsAnnot(x$label), x$x, x$y, :
## conversion failure on 'Quản lý tài nguyên & vận hành kỹ thuật cơ bản' in
## 'mbcsToSbcs': for ả (U+1EA3)
## Warning in grid.Call.graphics(C_text, as.graphicsAnnot(x$label), x$x, x$y, :
## conversion failure on 'Quản lý tài nguyên & vận hành kỹ thuật cơ bản' in
## 'mbcsToSbcs': for ậ (U+1EAD)
## Warning in grid.Call.graphics(C_text, as.graphicsAnnot(x$label), x$x, x$y, :
## conversion failure on 'Quản lý tài nguyên & vận hành kỹ thuật cơ bản' in
## 'mbcsToSbcs': for ỹ (U+1EF9)
## Warning in grid.Call.graphics(C_text, as.graphicsAnnot(x$label), x$x, x$y, :
## conversion failure on 'Quản lý tài nguyên & vận hành kỹ thuật cơ bản' in
## 'mbcsToSbcs': for ậ (U+1EAD)
## Warning in grid.Call.graphics(C_text, as.graphicsAnnot(x$label), x$x, x$y, :
## conversion failure on 'Quản lý tài nguyên & vận hành kỹ thuật cơ bản' in
## 'mbcsToSbcs': for ơ (U+01A1)
## Warning in grid.Call.graphics(C_text, as.graphicsAnnot(x$label), x$x, x$y, :
## conversion failure on 'Quản lý tài nguyên & vận hành kỹ thuật cơ bản' in
## 'mbcsToSbcs': for ả (U+1EA3)
## Warning in grid.Call.graphics(C_text, as.graphicsAnnot(x$label), x$x, x$y, :
## conversion failure on 'Vệ sinh an toàn thực phẩm (HACCP)' in 'mbcsToSbcs': for
## ệ (U+1EC7)
## Warning in grid.Call.graphics(C_text, as.graphicsAnnot(x$label), x$x, x$y, :
## conversion failure on 'Vệ sinh an toàn thực phẩm (HACCP)' in 'mbcsToSbcs': for
## ự (U+1EF1)
## Warning in grid.Call.graphics(C_text, as.graphicsAnnot(x$label), x$x, x$y, :
## conversion failure on 'Vệ sinh an toàn thực phẩm (HACCP)' in 'mbcsToSbcs': for
## ẩ (U+1EA9)
## Warning in grid.Call.graphics(C_text, as.graphicsAnnot(x$label), x$x, x$y, :
## conversion failure on 'An toàn lao động & An ninh' in 'mbcsToSbcs': for đ
## (U+0111)
## Warning in grid.Call.graphics(C_text, as.graphicsAnnot(x$label), x$x, x$y, :
## conversion failure on 'An toàn lao động & An ninh' in 'mbcsToSbcs': for ộ
## (U+1ED9)
print(
ggplot(IN_data, aes(x = reorder(Nodes, IDI), y = IDI)) +
geom_col(fill = "#2CA02C") + coord_flip()
)
## Warning in grid.Call.graphics(C_text, as.graphicsAnnot(x$label), x$x, x$y, :
## conversion failure on 'Ngoại ngữ thứ 2' in 'mbcsToSbcs': for ạ (U+1EA1)
## Warning in grid.Call.graphics(C_text, as.graphicsAnnot(x$label), x$x, x$y, :
## conversion failure on 'Ngoại ngữ thứ 2' in 'mbcsToSbcs': for ữ (U+1EEF)
## Warning in grid.Call.graphics(C_text, as.graphicsAnnot(x$label), x$x, x$y, :
## conversion failure on 'Ngoại ngữ thứ 2' in 'mbcsToSbcs': for ứ (U+1EE9)
## Warning in grid.Call.graphics(C_text, as.graphicsAnnot(x$label), x$x, x$y, :
## conversion failure on 'Sức khỏe & Thích nghi ca kíp' in 'mbcsToSbcs': for ứ
## (U+1EE9)
## Warning in grid.Call.graphics(C_text, as.graphicsAnnot(x$label), x$x, x$y, :
## conversion failure on 'Sức khỏe & Thích nghi ca kíp' in 'mbcsToSbcs': for ỏ
## (U+1ECF)
## Warning in grid.Call.graphics(C_text, as.graphicsAnnot(x$label), x$x, x$y, :
## conversion failure on 'Ngoại ngữ - Tiếng Anh' in 'mbcsToSbcs': for ạ (U+1EA1)
## Warning in grid.Call.graphics(C_text, as.graphicsAnnot(x$label), x$x, x$y, :
## conversion failure on 'Ngoại ngữ - Tiếng Anh' in 'mbcsToSbcs': for ữ (U+1EEF)
## Warning in grid.Call.graphics(C_text, as.graphicsAnnot(x$label), x$x, x$y, :
## conversion failure on 'Ngoại ngữ - Tiếng Anh' in 'mbcsToSbcs': for ế (U+1EBF)
## Warning in grid.Call.graphics(C_text, as.graphicsAnnot(x$label), x$x, x$y, :
## conversion failure on 'Trình độ học vấn' in 'mbcsToSbcs': for đ (U+0111)
## Warning in grid.Call.graphics(C_text, as.graphicsAnnot(x$label), x$x, x$y, :
## conversion failure on 'Trình độ học vấn' in 'mbcsToSbcs': for ộ (U+1ED9)
## Warning in grid.Call.graphics(C_text, as.graphicsAnnot(x$label), x$x, x$y, :
## conversion failure on 'Trình độ học vấn' in 'mbcsToSbcs': for ọ (U+1ECD)
## Warning in grid.Call.graphics(C_text, as.graphicsAnnot(x$label), x$x, x$y, :
## conversion failure on 'Trình độ học vấn' in 'mbcsToSbcs': for ấ (U+1EA5)
## Warning in grid.Call.graphics(C_text, as.graphicsAnnot(x$label), x$x, x$y, :
## conversion failure on 'Kinh nghiệm làm việc' in 'mbcsToSbcs': for ệ (U+1EC7)
## Warning in grid.Call.graphics(C_text, as.graphicsAnnot(x$label), x$x, x$y, :
## conversion failure on 'Kinh nghiệm làm việc' in 'mbcsToSbcs': for ệ (U+1EC7)
dev.off()
## quartz_off_screen
## 2