曾几何时,我ggplot2使用windowsFonts(Times=windowsFont("TT Times New Roman"))改变它来改变我的字体.现在我无法理解这一点.
在尝试设置family=""时ggplot2 theme()我似乎无法生成字体更改,因为我使用不同的字体系列编译下面的MWE.
library(ggplot2)
library(extrafont)
loadfonts(device = "win")
a <- ggplot(mtcars, aes(x=wt, y=mpg)) + geom_point() +
ggtitle("Fuel Efficiency of 32 Cars") +
xlab("Weight (x1000 lb)") + ylab("Miles per Gallon") +
theme(text=element_text(size=16,
# family="Comic Sans MS"))
# family="CM Roman"))
# family="TT Times New Roman"))
# family="Sans"))
family="Serif"))
print(a)
print("Graph should have refreshed")
Run Code Online (Sandbox Code Playgroud)
R正在返回一个警告font family not found in Windows font database,但有一个我正在关注的教程(如果我能再次找到它,我将在这里更新链接)说这是正常的而不是问题.此外,这在某种程度上起作用,因为我的图表曾经使用过一些arial或helvitica类型的字体.我认为即使在最初的迁移期间,这也始终是一个警告.
UPDATE
当我运行windowsFonts()我的输出是
$ serif [1]"TT Times …
我想更改所有geom_text元素的基本字体。
library(ggplot2)
df <- data.frame(
x = c(1, 2, 3), y = c(1, 2, 3), label = c("a", "b", "c")
)
ggplot(df, aes(x, y, label = label)) + geom_text()
Run Code Online (Sandbox Code Playgroud)
我尝试设置theme文本,但它似乎不影响geom_text元素。
ggplot(df, aes(x, y, label = label)) +
geom_text() +
theme(text = element_text(size = 42))
Run Code Online (Sandbox Code Playgroud)
我看过一些建议使用的旧帖子base_size,但看起来不再支持它。
fviz我正在 R 中运行 PCA 并使用包中的函数 绘制结果Factoextra。我想使用此代码更改标题和值等图例属性
acp<-PCA(params_alpha, scale.unit = TRUE, ncp=5, quali.sup=c(1,2))\n\n plot1<-fviz_pca_biplot(acp, geom=c("point"), pointsize=1, col.var="black", axes=c(1,2), habillage=2)+\n theme(legend.text = element_text("Lobulo"))\nRun Code Online (Sandbox Code Playgroud)\n\n我这里有两个主要问题:首先,当我运行代码时出现此错误:
\n\n In grid.Call(C_textBounds, as.graphicsAnnot(x$label), x$x, x$y, : font family not found in Windows font database \nRun Code Online (Sandbox Code Playgroud)\n\n我尝试使用这篇文章Can't Change fonts in ggplot/geom_text来解决它,但它没有效果。这段代码的另一个问题是图例属性根本没有改变。
我只想更改图例标题和值,但我不知道如何更改。如果您能帮助我,我\xc2\xb4d将非常感激。
\n