Я не могу правильно сориентировать текст в таблицах с помощью функции textplot.
Я написал следующий код:
jpeg("Equity_Regions_TAA_Scorecard.jpg", width = 7.0, height = 3.5, units="in", res=200, pointsize=5)
result <- cbind(as.numeric(last(na.locf(signal.combined))),
round(as.numeric(last(na.locf(eps.pct))), digits=2),
round(as.numeric(last(na.locf(err.pct))), digits=2),
round(as.numeric(last(na.locf(pmi.pct))), digits=2),
round(as.numeric(last(na.locf(exp.pct))), digits=2),
round(as.numeric(last(na.locf(surprise.pct))), digits=2),
round(as.numeric(last(na.locf(momentum.pct))), digits=2))
colnames(result) <- c("TAA Score", "EPS", "ERR", "PMI", "Expectations", "Surprises", "Momentum")
row.names(result) <- as.character(names(signal.combined))
for (j in 2:ncol(result)) {
for (i in 1:nrow(result)) {
result[i, j] <- if (result[i, j] >= 80) {
"++"
} else if (result[i, j] < 80 & result[i, j] >= 60) {
"+"
} else if (result[i, j] < 60 & result[i, j] >= 40) {
"o"
} else if (result[i, j] < 40 & result[i, j] >= 20) {
"-"
} else {
"--"
}
}
}
cols <- matrix(NA, nrow=nrow(result), ncol=ncol(result))
cols[,1] <- col1
for (j in 2:ncol(result)) {
for (i in 1:nrow(result)) {
cols[i, j] <- if(result[i, j] =="++") {
"darkgreen"
} else if (result[i, j] =="+") {
"forestgreen"
} else if (result[i, j] =="o") {
"dimgray"
} else if (result[i, j] =="-") {
"firebrick1"
} else {
"firebrick"
}
}
}
textplot(as.data.frame(result), col.data=cols, rmar = 1.0, cmar = 1.0, max.cex=1.5, cex.main=1.5,
halign = "center", valign = "center", col.rownames = col1, col.colnames = col1,
wrap.rownames=10, wrap.colnames=10, mar = c(0,0,3,0)+0.1)
title(main="Equity Regions TAA Scorecard")
dev.off()
Я использую следующая версия R:
platform x86_64-w64-mingw32
arch x86_64
os mingw32
system x86_64, mingw32
status
major 3
minor 4.3
year 2017
month 11
day 30
svn rev 73796
language R
version.string R version 3.4.3 (2017-11-30)
nickname Kite-Eating Tree
На данный момент это мой вывод, где видно, что текст в таблице не выровнен и не центрирован:
Я думаю, что наиболее важный фрагмент кода, вероятно, следующий:
textplot(as.data.frame(result), col.data=cols, rmar = 1.0, cmar = 1.0, max.cex=1.5, cex.main=1.5,
halign = "center", valign = "center", col.rownames = col1, col.colnames = col1,
wrap.rownames=10, wrap.colnames=10, mar = c(0,0,3,0)+0.1)
Я что-то здесь не так делаю? Очевидно, что тексты не центрируются, несмотря на использование таких команд, как halign = "center", valign = "center"
.
. Любая помощь будет принята с благодарностью!