library(tidyverse)
library(emuR)
pfad = "/Users/jmh/b/current/abm24/abm_ma"
# write.table(v.fmt, file.path(pfad, "v.fmt.df.txt"), quote=F)
# write.table(v.fmt, file = file.path(pfad, "v.fmt.df.txt"), quote=F)
x.fmt = read.table(file.path(pfad, "v.fmt.df.txt"))
theme_phon =
function(atextx = 18, atexty = 18, atitlex=
18, atitley = 18, ptitle=24, strip.text.x = 24,
lpos = "bottom", othertext=24, ltitle =24){
theme(
axis.text.x = element_text(size=atextx),
axis.title.x = element_text(size=atitley),
axis.text.y = element_text(size=atexty),
axis.title.y = element_text(size=atitley),
plot.title = element_text(size = ptitle),
legend.position=lpos,
legend.title = ltitle,
strip.text.x =element_text(size=strip.text.x),
text = element_text(size=othertext))
}
fdat.df = x.fmt
x.fmt = read.table(file.path(pfad, "v.fmt.df.txt"))
temp = x.fmt$labels=="E"
x.fmt$F1[temp] = x.fmt$F1[temp]-1
x.fmt$F2[temp] = x.fmt$F2[temp]-.6
# means of categories
mvowel = x.fmt %>%
# select values at temporal midpoint
filter(times_norm == 0.5) %>%
filter(labels %in% c("E", "u:")) %>%
group_by(labels) %>%
summarise(mF1 = -mean(F1), mF2 = -mean(F2))
p = x.fmt %>%
# select values at temporal midpoint
filter(times_norm == 0.5) %>%
filter(labels %in% c("E", "u:"))
rownames(p) = 1:nrow(p)
lwd = 1.5; cols = c("black", "red")
n =60; k = 44; i = 40; textsize = 60
m.df = ggplot(p) +
aes(y = F1, x = F2, col = labels) +
# geom_text(label = rownames(p), size=5) +
geom_point(size=4) +
annotate("text",
x= -0.260, y = -0.132,
label = "ʉ", size = 26, col = "black") +
annotate("text",
x = -1.13, y = -0.462,
label = "u", size = 26, col = "red") +
stat_ellipse(level=.95) +
coord_cartesian(xlim=c(.5, -2),
ylim=c(1, -1)) +
# scale_x_reverse(name = "F2 (sd)") +
# scale_y_reverse(name = "F1 (sd)") +
theme_light() +
theme_phon(lpos="top",
atextx=i,
atexty=i,
atitlex=k,
atitley=k,
strip.text.x = k,
ptitle=n,
ltitle=element_blank(),
othertext=n) +
theme(legend.position="none") +
scale_colour_manual(values = cols)
m.df

ggsave(filename = file.path(pfad, "mahal.png"),
plot = m.df,
width = 45,
height = 30,
units = "cm")
nums = c(43, 48, 49, 36, 15, 25, 57, 70, 52, 53)
pnew = p
pnew = pnew %>% mutate(
rnum = rownames(pnew),
labels = case_when(rnum %in% nums ~ "u:",
T ~ labels))
# means
mvowel2 = pnew %>%
group_by(labels) %>%
summarise(mF1 = -mean(F1), mF2 = -mean(F2))
m2.df = ggplot(pnew) +
aes(y = F1, x = F2, col = labels) +
# geom_text(label = rownames(p), size=5) +
geom_point(size=4) +
annotate("text",
x= -0.227, y = -0.129,
label = "ʉ", size = 26, col = "black") +
annotate("text",
x = -1.02, y = -0.405,
label = "u", size = 26, col = "red") +
stat_ellipse(level=.95) +
coord_cartesian(xlim=c(.5, -2),
ylim=c(1, -1)) +
# scale_x_reverse(name = "F2 (sd)") +
# scale_y_reverse(name = "F1 (sd)") +
theme_light() +
theme_phon(lpos="top",
atextx=i,
atexty=i,
atitlex=k,
atitley=k,
strip.text.x = k,
ptitle=n,
ltitle=element_blank(),
othertext=n) +
theme(legend.position="none") +
scale_colour_manual(values = cols)
m2.df

ggsave(filename = file.path(pfad, "mahal2.png"),
plot = m2.df,
width = 45,
height = 30,
units = "cm")
fdat.m = fdat.df %>%
filter(times_norm==.5) %>%
filter(speaker == "K67") %>%
filter(labels %in% c("i:", "o:", "u:")) %>%
group_by(labels) %>%
summarise(F1 = mean(F1), F2 = mean(F2))
cols2 = c("red", "darkgreen", "blue")
m3.df = fdat.df %>%
filter(times_norm==.5) %>%
filter(speaker == "K67") %>%
filter(labels %in% c("i:", "o:", "u:")) %>%
ggplot +
aes(y = F1, x = F2, col=labels ) +
xlab("")+
ylab("")+
scale_x_reverse() +
scale_y_reverse() +
annotate("text",
y = -0.607, x = 0.990 ,
label = "i", size = 14, col = "red") +
annotate("text",
y = -0.0121, x = -1.51 ,
label = "u", size = 14, col = "darkgreen") +
annotate("text",
y = -0.452, x = -1.03 ,
label = "ju", size = 14, col = "blue") +
annotate("text",
y = .25, x = -.8 ,
label = "1", size = 14) +
annotate("text",
y = -.01, x = -.5 ,
label = "2", size = 14) +
annotate("text",
y = -.35, x = -1.1,
label = "3", size = 14) +
annotate("text",
y = -.15, x = -1.8,
label = "4", size = 14) +
stat_ellipse() +
theme_light() +
theme_phon(lpos="top",
atextx=i,
atexty=i,
atitlex=k,
atitley=k,
strip.text.x = k,
ptitle=n,
ltitle=element_blank(),
othertext=n) +
theme(legend.position="none",
axis.text.x=element_blank(),
axis.ticks.x=element_blank(),
axis.text.y=element_blank(),
axis.ticks.y=element_blank()) +
scale_colour_manual(values = cols2)
m3.df

ggsave(filename = file.path(pfad, "mahal3.png"),
plot = m3.df,
width = 30,
height = 30,
units = "cm")
m4.df = fdat.df %>%
filter(times_norm==.5) %>%
filter(speaker == "K67") %>%
filter(labels %in% c("i:", "o:", "u:")) %>%
ggplot +
aes(y = F1, x = F2, col=labels ) +
xlab("")+
ylab("")+
scale_x_reverse() +
scale_y_reverse() +
stat_ellipse(linewidth=2) +
theme_light() +
theme_phon(lpos="top",
atextx=i,
atexty=i,
atitlex=k,
atitley=k,
strip.text.x = k,
ptitle=n,
ltitle=element_blank(),
othertext=n) +
theme(legend.position="none",
axis.text.x=element_blank(),
axis.ticks.x=element_blank(),
axis.text.y=element_blank(),
axis.ticks.y=element_blank()) +
scale_colour_manual(values = cols2)
m4.df

ggsave(filename = file.path(pfad, "mahal4.png"),
plot = m4.df,
width = 30,
height = 30,
units = "cm")