setwd("~/Desktop/Sertifikasiya")

Sertifikasiya imtahanlarında müəllimlərə təklif edilmiş testlər və onları təşkil edən suallar haqda ümumi məlumat.

Bu imtahanlarda müəllimlərə təklif edilən testlər çox asan olmuşdur. Rus bölməsində təklif olunan test isə o qədər asan olmuşdur ki, nəticədə, test təşkilinin bir neçə vacib prinsipi pozulmuşdur.

İmtahanlardan əvvəl keçid balı kimi 30 bal elan edilmişdir (60 balın yarısı). Bu o demək idi ki, testlərin etibarlılığının yuxarı olması üçün ümumi balların paylanmasının simmetrik olmasına çalışılmaq lazımdır. Yəıni, hər bir seansda cəm ballarin paylanmasının medianı və orta qiyməti təxminən eyni olsun.

Bizim test bazamızda ibtidai sinif müəllimləri üçün nəzərdə tutulan, kalibrə olunmuş kifayət sayda suallarımız vardır. Onların içərisindən çətinlik dərəcələri sıfrın ətrafında olan tapşırıqlar seçilməli, yaxud onlara ekvivalent tapşırıqlar yazılmalı idi. Lakin bu yenə də belə olmayıbdır.

Məsələn, rus bölməsində verilən testin cəm ballarının orta qiyməti- 48.8691883 -bal olmuşdur. İştirakçıların 60 faizindən çoxu 50-baldan yuxarı, yaxud 83-faizdən çox bal toplamışdır. MİQ-imtahanlarında rus bölməsinin nəticələri azərbaycan bölməsinin nəticələrindən belə fərqlənmir.

Əgər, rus bölməsi müəllim qıtlığı ilə üzləşibsə problem bu yolla həll olunmalı deyildi. Cəm ballarının normal paylanmasına qismən nail olunmalı, keçid balın aşağı salınması yolu ilə məqsədə nail olmağa cəhd edilməli idi. Bunu hamı da başa düşərdi. Nəticədə, rus bölməsində təklif olunan testin bir tapşırığı (IBS3076677) ümumiyyətlə yararsız, aşağıdakı adları qeyd olunan 33-tapşırıq isə qüsurlu tapşırıq kimi dəyərləndirilmişdir

IBS3051694, IBS003086062, IBS003086055, IBS3065950, IBS3065822, IBS3065507, IBS3064935, IBS3064496, IBS3052752, IBS3052431, IBS003086067, IBS3052581, IBS003005940, IBS003005458, IBS3064117, IBS3076677, IBS3063418, IBS003005138, IBS003004607, IBS003003864, IBS003011549, IBS003087330, IBS3083784, IBS003061784, IBS003060387, IBS003061968, IBS003087909, IBS003087524, IBS3075293, IBS3066759, IBS3066671, IBS003007448, IBS003007098, IBS003006915, MET9006187, MET9006189, MET9006191, MET9006192, MET9006193, MET9006194, MET9006195

Lazım olan paketlərin yüklənməsi

# set options
options(stringsAsFactors = F)         # no automatic data transformation
options("scipen" = 100, "digits" = 4) # suppress math annotation
# install packages
library(knitr)
library(lattice)
library(tidyverse)
library(likert)
library(MASS)
library(psych)
library(viridis)
library(ggplot2)
library(here)
library(flextable)
library(devtools)
library(ShinyItemAnalysis)
# library(userfriendlyscience)
# activate klippy for copy-to-clipboard button
klippy::klippy()

Faylın yüklənməsi

Ibt_S_22 <- read_csv("Ibt_S_22.csv")
Ibt_S_22[Ibt_S_22== "BAKI"] <- "Bakı"
table(table(Ibt_S_22$Bölmə))
## 
## 1269 9675 
##    1    1
table(Ibt_S_22$Im_mərkəzi)
## 
##                        Azərbaycan Texniki Universitetinin İdman Kompleksi 
##                                                                      3803 
##                                       Gəncə şəhər 28 № li tam orta məktəb 
##                                                                      1079 
##                    Gəncə şəhər Nizami Aydın adına 18 №-li tam orta məktəb 
##                                                                       911 
##            Sumqayıt şəhər Nəsrəddin Tusi adına 12 nömrəli tam orta məktəb 
##                                                                      1099 
##        Sumqayıt şəhər Yusif Məmmədəliyev adına 31 nömrəli tam orta məktəb 
##                                                                      1052 
##            Xaçmaz rayon Cəfər Cabbarlı adına şəhər 6 №-li tam orta məktəb 
##                                                                      1252 
##                                    Yasamal rayon 158 №-li tam orta məktəb 
##                                                                       649 
## Yasamal rayon Milli Qəhrəman M.Ə.İbrahimov adına 153 №-li tam orta məktəb 
##                                                                      1099
table(Ibt_S_22$Seans)
## 
##     Seans_453     Seans_454     Seans_456     Seans_458 Seans_459_Rus 
##          2579          2240          2604          2252          1269
table(Ibt_S_22$Y_rayon)
## 
##  Abşeron     Bakı Daşkəsən    Gəncə Goranboy   Göygöl Naftalan     Quba 
##      965     5247      116      709      601      295       26      674 
##    Qusar   Şabran    Samux  Siyəzən Sumqayıt   Xaçmaz     Xızı 
##      405      171      243      153      702      596       41
table(Ibt_S_22$Test_S)
## 
## Test_asandır 
##        10944

Bütün seanslar üzrə testlər asan tərtib edilmişdir.

İmtahan mərkəzlərinin adlarının sadələşdirilməsi

İmtahan mərkəzlərinin adları uzun olduqlarına görə təqdimatlarda müəyyən çətinliklər törədir. Bu səbəbdən onların adları qısaldılmışdır

Ibt_S_22[Ibt_S_22=="Azərbaycan Texniki Universitetinin İdman Kompleksi"] <- "Tex.Un"
Ibt_S_22[Ibt_S_22=="Gəncə şəhər 28 № li tam orta məktəb"] <- "Gəncə_28"
Ibt_S_22[Ibt_S_22=="Gəncə şəhər Nizami Aydın adına 18 №-li tam orta məktəb"] <- "Gəncə_18"
Ibt_S_22[Ibt_S_22== "Sumqayıt şəhər Nəsrəddin Tusi adına 12 nömrəli tam orta məktəb"] <- "Sumqayıt_12"
Ibt_S_22[Ibt_S_22=="Sumqayıt şəhər Yusif Məmmədəliyev adına 31 nömrəli tam orta məktəb"]<- "Sumqayıt_31"
Ibt_S_22[Ibt_S_22=="Xaçmaz rayon Cəfər Cabbarlı adına şəhər 6 №-li tam orta məktəb"] <- "Xaçmaz_6"
Ibt_S_22[Ibt_S_22=="Yasamal rayon 158 №-li tam orta məktəb"] <-"Yasamal_158"       
Ibt_S_22[Ibt_S_22=="Yasamal rayon Milli Qəhrəman M.Ə.İbrahimov adına 153 №-li tam orta məktəb"] <-"Yasamal_153"
Ibt_S_22[Ibt_S_22== "BAKI"] <- "Bakı"

Cəm ballarının 5 səviyyəyə bölünməsi

Cəm ballarının daha da dərindən analizi məqsədilə onların dəyişmə diapozonu (0-60) beş hissəyə bölünmüş və ‘Çox_pis’, ‘Pis’, ‘Orta’, ‘Yaxşı’ və ‘Əla’ kimi adlandırılmışdır. Cəm ballarının paylanmasının analızı bu hissələr üzrə aparılır.

Ibt_S_22_S <- Ibt_S_22 %>%
  mutate(Sev_Bal = case_when(
    Bal >= 0 & Bal < 20 ~ 'Çox_pis',
    Bal >= 20 & Bal < 30 ~ 'Pis',
    Bal >= 30 & Bal < 40 ~ 'Orta',
    Bal >= 40 & Bal < 50 ~ 'Yaxşı',
    Bal >= 50 & Bal <= 60  ~ 'Əla'))

Bütün iştirakçıların cəm ballarının paylanmsı

df <- as.data.frame(Ibt_S_22_S)
score <- df$Bal
cut <- median(score) # cut-score
color <- c(rep("red", cut - min(score)), "gray", rep("blue", max(score) - cut))
df <- data.frame(score)

# histogram
library(ggplot2)
library(ShinyItemAnalysis)
P_21_9_Bal <- ggplot(df, aes(score)) +
  geom_histogram(binwidth = 1, fill = color, col = "black") +
  xlab("Cəm ballar") +
  ylab("Cavab verənlərin sayı") +
  theme_app()
P_21_9_Bal

Bütün iştirakçıların ixtisasdan cəm ballarının paylanmsı

df <- as.data.frame(Ibt_S_22_S)
score <- df$Bal_Ix
cut <- median(score) # cut-score
color <- c(rep("red", cut - min(score)), "gray", rep("blue", max(score) - cut))
df <- data.frame(score)

# histogram
library(ggplot2)
library(ShinyItemAnalysis)
P_21_9_Bal <- ggplot(df, aes(score)) +
  geom_histogram(binwidth = 1, fill = color, col = "black") +
  xlab("İxtisasdan balların tezliyi") +
  ylab("İxtisasdan cəm ballar") +
  theme_app()
P_21_9_Bal

Bütün iştirakçıların metodikadan cəm ballarının paylanmsı

df <- as.data.frame(Ibt_S_22_S)
score <- df$Bal_Met
cut <- median(score) # cut-score
color <- c(rep("red", cut - min(score)), "gray", rep("blue", max(score) - cut))
df <- data.frame(score)

# histogram
library(ggplot2)
library(ShinyItemAnalysis)
P_21_9_Bal <- ggplot(df, aes(score)) +
  geom_histogram(binwidth = 1, fill = color, col = "black") +
  xlab("Metodikadan balların tezliyi") +
  ylab("Balların tezliyi") +
  theme_app()
P_21_9_Bal

Bölmələr üzrə ümumi balların sıxlıq qrafiklırı

theme_set(theme_classic())
G2 <- ggplot(Ibt_S_22_S, aes(Bal))
G2 + geom_density(aes(fill= factor(Bölmə), alpha=0.8)) +
  labs(title = "Bölmələr üzrə ümumi balların orta qiyməti", 
       x="Cəm ballar")

Bölmələr üzrə ümumi balların bığlı qutu təsviri

g <- ggplot(Ibt_S_22_S, aes(Bölmə, Bal))
g + geom_boxplot(aes(fill = factor(Bölmə))) + 
  theme(axis.text.x = element_text(angle=65, vjust=0.6)) + 
  labs(title="Bölmələr üzrə ümumi balların bığlı qutu təqvimi", 
       caption="Source: DF",
       x = "Bölmə",
       y = "Cəm ballar") 

Bölmələr üzrə ixtisasdan balların sıxlıq qrafiklırı

theme_set(theme_classic())
G2 <- ggplot(Ibt_S_22_S, aes(Bal_Ix))
G2 + geom_density(aes(fill= factor(Bölmə), alpha=0.8)) +
  labs(title = "Bölmələr üzrə ümumi balların sıxlıq qqrafiki", 
       x="Cəm ballar")

Bölmələr üzrə ixtisasdan balların bığlı qutu təsviri

g <- ggplot(Ibt_S_22_S, aes(Bölmə, Bal_Ix))
g + geom_boxplot(aes(fill = factor(Bölmə))) + 
  theme(axis.text.x = element_text(angle=65, vjust=0.6)) + 
  labs(title="Bölmələr üzrə ixtisasdan cəm balların bığlı qutu təsviri", 
       caption="Source: DF",
       x = "Bölmələr",
       y = "Cəm ballar") 

Bölmələr üzrə metodikadan balların sıxlıq qrafiklırı

theme_set(theme_classic())
G2 <- ggplot(Ibt_S_22_S, aes(Bal_Met))
G2 + geom_density(aes(fill= factor(Bölmə), alpha=0.8)) +
  labs(title = "Bölmələr üzrə ümumi balların sıxlıq qrafiki", 
       x="Cəm ballar")

Bölmələr üzrə metodikadan balların bığlı qutu təsviri

g <- ggplot(Ibt_S_22_S, aes(Bölmə, Bal_Met))
g + geom_boxplot(aes(fill = factor(Bölmə))) + 
  theme(axis.text.x = element_text(angle=65, vjust=0.6)) + 
  labs(title="Metodikadan bölmələr üzrə ümumi balların bığlı qutu təsviri", 
       caption="Source: DF",
       x = "Bölmələr",
       y = "Cəm ballar") 

İmtahan mərkəzlər üzrə təhlil

Ibt_S_22_S_Im_mərkəzi <- Ibt_S_22_S %>% 
  group_by(Im_mərkəzi) %>% 
  summarise(Müəl_sayı = n(),
            Orta_Bal = round(mean(Bal),2),
            Orta_Bal_Ix= round(mean(Bal_Ix),2),
            Orta_Bal_Met= round(mean(Bal_Met),2),
            Orta_Kr_Alfa = round(mean(Kr_alfa),2),
            Orta_Məl_Miq = round(mean(Məl_Miq),2)) %>% 
  arrange(desc(Orta_Bal))

Mərkəzlır üzrə ümumi balların sıxlıq qrafiklırı

theme_set(theme_classic())
G2 <- ggplot(Ibt_S_22_S, aes(Bal))
G2 + geom_density(aes(fill= factor(Im_mərkəzi), alpha=0.8)) +
  labs(title = "İmtahan mərkəzləri üzrə ümumi balların sıxlıq qrafiki", 
       x="Cəm ballar")

Mərkəzlır üzrə ümumi balların bığlı qutu təsviri

g <- ggplot(Ibt_S_22_S, aes(Im_mərkəzi, Bal))
g + geom_boxplot(aes(fill = factor(Im_mərkəzi))) + 
  theme(axis.text.x = element_text(angle=65, vjust=0.6)) + 
  labs(title="İmtahan mərkəzləri üzrə ümumi balların bığlı qutu təsviri", 
       caption="Source: DF",
       x = "İmtahan mərkəzləri",
       y = "Cəm ballar") 

Mərkəzlır üzrə ixtisasdan balların sıxlıq qrafiklırı

theme_set(theme_classic())
G2 <- ggplot(Ibt_S_22_S, aes(Bal_Ix))
G2 + geom_density(aes(fill= factor(Im_mərkəzi), alpha=0.8)) +
  labs(title = "İmtahan mərkəzləri üzrə ixtisasdan cəm balların sıxlıq qrafiki", 
       x="Cəm ballar")

Mərkəzlır üzrə ümumi balların bığlı qutu təsviri

g <- ggplot(Ibt_S_22_S, aes(Im_mərkəzi, Bal))
g + geom_boxplot(aes(fill = factor(Im_mərkəzi))) + 
  theme(axis.text.x = element_text(angle=65, vjust=0.6)) + 
  labs(title="İmtahan mərkəzləri üzrə ixtisasdan balların bığlı qutu təqdimi", 
       caption="Source: DF",
       x = "Im_mərkəzi",
       y = "Cəm ballar") 

Mərkəzlır üzrə metodikadan balların sıxlıq qrafiklırı

theme_set(theme_classic())
G2 <- ggplot(Ibt_S_22_S, aes(Bal_Ix))
G2 + geom_density(aes(fill= factor(Im_mərkəzi), alpha=0.8)) +
  labs(title = "İmtahan mərkəzləri üzrə metodikadan cəm balların sıxlıq qrafiki", 
       x="Cəm ballar")

Mərkəzlır üzrə metodikadan balların bığlı qutu təsviri

g <- ggplot(Ibt_S_22_S, aes(Im_mərkəzi, Bal))
g + geom_boxplot(aes(fill = factor(Im_mərkəzi))) + 
  theme(axis.text.x = element_text(angle=65, vjust=0.6)) + 
  labs(title="İmtahan mərkəzləri üzrə metodikadan cəm balların bığlı qutu təqdimi", 
       caption="Source: DF",
       x = "İmtahan mərkəzləri",
       y = "Cəm ballar") 

Cəm ballarının 5-səviyyəyə bölünməklə təhlili

library(readr)
Yekun <- read_csv("Yekun.csv")
Yekun$Sev_Bal  <- ordered(Yekun$Sev_Bal ,
                                    levels = c("Çox_pis", "Pis", "Orta","Yaxşı", "Əla"))
Yekun$Sev_Bal <- as.numeric(Yekun$Sev_Bal)
str(Yekun)
## spec_tbl_df [10,944 × 18] (S3: spec_tbl_df/tbl_df/tbl/data.frame)
##  $ Sıra      : num [1:10944] 15002888 15002889 15002892 15002893 15002899 ...
##  $ Im_mərkəzi: chr [1:10944] "Xaçmaz_6" "Xaçmaz_6" "Xaçmaz_6" "Xaçmaz_6" ...
##  $ Variant   : num [1:10944] 1 1 1 1 1 1 1 1 1 1 ...
##  $ Fənn      : chr [1:10944] "İbtidai sinif" "İbtidai sinif" "İbtidai sinif" "İbtidai sinif" ...
##  $ Bölmə     : chr [1:10944] "Azərbaycan" "Azərbaycan" "Azərbaycan" "Azərbaycan" ...
##  $ Cinsi     : chr [1:10944] "Qadın" "Qadın" "Qadın" "Qadın" ...
##  $ Y_rayon   : chr [1:10944] "Xaçmaz" "Xaçmaz" "Xaçmaz" "Xaçmaz" ...
##  $ Bal       : num [1:10944] 34 18 49 26 36 46 29 34 35 15 ...
##  $ Bal_Ix    : num [1:10944] 32 18 41 22 31 38 26 30 29 15 ...
##  $ Bal_Met   : num [1:10944] 2 0 8 4 5 8 3 4 6 0 ...
##  $ Kr_alfa   : num [1:10944] 0.93 0.93 0.93 0.93 0.93 0.93 0.93 0.93 0.93 0.93 ...
##  $ Yox_Cav   : num [1:10944] 6.33 6.33 6.33 6.33 6.33 6.33 6.33 6.33 6.33 6.33 ...
##  $ Məl_Miq   : num [1:10944] 78.5 78.5 78.5 78.5 78.5 ...
##  $ Yar_T     : num [1:10944] 0 0 0 0 0 0 0 0 0 0 ...
##  $ Qüs_T     : num [1:10944] 9 9 9 9 9 9 9 9 9 9 ...
##  $ Test_S    : chr [1:10944] "Test_asandır" "Test_asandır" "Test_asandır" "Test_asandır" ...
##  $ Seans     : chr [1:10944] "Seans_453" "Seans_453" "Seans_453" "Seans_453" ...
##  $ Sev_Bal   : num [1:10944] 3 1 4 2 3 4 2 3 3 1 ...
##  - attr(*, "spec")=
##   .. cols(
##   ..   Sıra = col_double(),
##   ..   Im_mərkəzi = col_character(),
##   ..   Variant = col_double(),
##   ..   Fənn = col_character(),
##   ..   Bölmə = col_character(),
##   ..   Cinsi = col_character(),
##   ..   Y_rayon = col_character(),
##   ..   Bal = col_double(),
##   ..   Bal_Ix = col_double(),
##   ..   Bal_Met = col_double(),
##   ..   Kr_alfa = col_double(),
##   ..   Yox_Cav = col_double(),
##   ..   Məl_Miq = col_double(),
##   ..   Yar_T = col_double(),
##   ..   Qüs_T = col_double(),
##   ..   Test_S = col_character(),
##   ..   Seans = col_character(),
##   ..   Sev_Bal = col_character()
##   .. )
##  - attr(*, "problems")=<externalptr>

Seanslar və balların səviyyələri üçün rənglərin təyini

clrs_Seans <- c("red",  "blue", "green","black", "brown")
clrs5 <- c("firebrick4", "firebrick1", "gray70", "blue", "darkblue")

Müxtəlif seanslar üzrə səviyyələrin tezliklərinin bir qrafikdə verilməsi.

# create cumulative density plot
Yekun_1 <- Yekun %>% 
  dplyr::select(Seans, Sev_Bal)

Yekun_1 %>%
  ggplot(aes(x = Sev_Bal, color = Seans)) + 
  geom_step(aes(y = ..y..), stat = "ecdf") +
  labs(y = "Cumulative Density") + 
  scale_x_discrete(limits = c("1","2","3","4","5"), 
                   breaks = c(1,2,3,4,5),
                   labels=c("Çox_pis", "Pis", 
                            "Orta", "Yaxşı", "Əla")) + 
  scale_colour_manual(values = clrs_Seans ) + 
  theme_bw() 

Seanslar üzrə səviyyələrin dairəvi diaqramda təqdimi

Yekun_1_P <- Yekun_1 %>%
  dplyr::group_by(Sev_Bal) %>%
  dplyr::summarise(Frequency = n()) %>%
  dplyr::mutate(Percent = round(Frequency/sum(Frequency)*100, 1)) %>%
  # order the levels of Satisfaction manually so that the order is not alphabetical
  dplyr::mutate(Sev_Bal = factor(Sev_Bal, 
                levels = 1:5,labels = c("Çox_pis", "Pis", 
                                    "Orta", "Yaxşı", "Əla")))

# create pie chart
Yekun_1_P %>%
  ggplot(aes("", Percent, fill = Sev_Bal)) + 
  geom_bar(stat="identity", width=1, color = "white") +
  coord_polar("y", start=0) +
  scale_fill_manual(values = clrs5) +
  theme_void()

Seanslar üzrə səviyyələrin dairəvi diaqramda faizlər göstərilməklə təqdimi

#################
P_Yekun_1_P <- Yekun_1_P %>%
  dplyr::arrange(desc(Sev_Bal)) %>%
  dplyr::mutate(Position = cumsum(Percent)- 0.5*Percent)

# create pie chart
P_Yekun_1_P %>%
  ggplot(aes("", Percent, fill = Sev_Bal)) + 
  geom_bar(stat="identity", width=1, color = "white") +
  coord_polar("y", start=0) +
  scale_fill_manual(values = clrs5) +
  theme_void() +
  geom_text(aes(y = Position, label = Percent), color = "white", size=6)

Səfiyyələrin hər bir seans üzrə ayrılıqda təqdimi

G_Yekun_1_P <- Yekun_1 %>%
  dplyr::group_by(Seans, Sev_Bal) %>%
  dplyr::summarise(Frequency = n()) %>%
  dplyr::mutate(Percent = round(Frequency/sum(Frequency)*100, 1),
                Sev_Bal = factor(Sev_Bal, 
                                      levels = 1:5,
                                      labels = c("Çox_pis", "Pis", 
                                                 "Orta", "Yaxşı", "Əla"))) %>%
  dplyr::arrange(desc(Sev_Bal)) %>%
  dplyr::mutate(Position = cumsum(Percent)- 0.5*Percent)

# create pie chart
G_Yekun_1_P %>%
  ggplot(aes("", Percent, fill = Sev_Bal)) + 
  facet_wrap(~Seans) +
  geom_bar(stat="identity", width=1, color = "white") +
  coord_polar("y", start=0) +
  scale_fill_manual(values = clrs_Seans) +
  theme_void() +
  geom_text(aes(y = Position, label = Percent), color = "white", size=4)

Səviyyələrin bığlı qutu təqdimi

P_Yekun_1_P %>%
  ggplot(aes(Sev_Bal, Percent, fill = Sev_Bal)) +
  # determine type of plot
  geom_bar(stat="identity") +          
  # use black & white theme
  theme_bw() +                         
  # add and define text
  geom_text(aes(y = Percent-5, label = Percent), color = "white", size=3) + 
  # add colors
  scale_fill_manual(values = clrs5) +
  # suppress legend
  theme(legend.position="none")

Bığlı qutu təqdimi üçün yeni datanın düzəldilməsi

# create bar plot data
Bar_Yekun <- Yekun %>%
  dplyr::group_by(Seans, Sev_Bal) %>%
  dplyr::summarise(Frequency = n()) %>%
  dplyr::mutate(Percent = round(Frequency/sum(Frequency)*100, 1)) %>%
  dplyr::mutate(Sev_Bal = factor(Sev_Bal, 
                                      levels = 1:5,
                                      labels = c("Çox_pis", "Pis", 
                                                 "Orta", "Yaxşı", "Əla")))

Bığlı qutu təqdimi

Bar_Yekun %>%
  ggplot(aes(Sev_Bal, Frequency, fill = Seans)) + 
  geom_bar(stat="identity", position = position_dodge()) +
  # define colors
  scale_fill_manual(values = clrs_Seans) + 
  # add text
  geom_text(aes(label=Frequency), vjust=1.6, color="white", 
            # define text position and size
            position = position_dodge(0.9),  size=3.5) + 
  theme_bw()                         

Seanslar üzrə sütunlu diaqramlar

# create grouped bar plot
Bar_Yekun %>%
  ggplot(aes(Sev_Bal, Frequency, 
             fill = Sev_Bal, 
             color = Sev_Bal)) +
  facet_grid(~Seans) +
  geom_bar(stat="identity", position=position_dodge()) +
  geom_line() +
  # define colors
  scale_fill_manual(values=clrs_Seans) +
  scale_color_manual(values=clrs_Seans) +
  # add text and define color
  geom_text(aes(label=Frequency), vjust=1.6, color="white", 
            # define text position and size
            position = position_dodge(0.9),  size=3.5) +     
  theme_bw() +
  theme(axis.text.x=element_blank())