问题标签 [extrafont]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
r - 更改 ggplot2 中的字体
曾几何时,我ggplot2
使用windowsFonts(Times=windowsFont("TT Times New Roman"))
. 现在,我无法摆脱它。
在尝试设置family=""
时ggplot2
theme()
,当我用不同的字体系列编译下面的 MWE 时,我似乎无法更改字体。
R 正在返回一个警告font family not found in Windows font database
,但是我正在关注一个教程(如果我能再次找到它,我将在此处更新链接)说这是正常的,不是问题。此外,不知何故,这在某一时刻起作用,因为我的图表曾经使用过一些 arial 或 helvitica 字体。我认为即使在最初的迁移期间,这也一直是一个当前的警告。
更新
当我运行windowsFonts()
我的输出是
$serif [1] “TT 时代新罗马”
$sans [1] “TT Arial”
$mono [1] “TT 快递新”
但是,这是在我跑完之后,font_import()
所以我只能得出结论,我的字体没有保存在正确的位置。运行font_import()
请求的代码实际上加载了库:
r - Extrafont 和 ggsave:字符在另一个之上
我目前正在尝试在我的所有情节中使用 Arial.ttf。我在网上找到了几本关于字体的手册,但是当我尝试通过 ggsave 和默认设备保存花盆时遇到了问题。
最小的工作示例
我正在运行以下最小工作示例来重现此错误:
这会产生以下(正确的)PNG 图像:
然而,Arial PDF 将所有字符堆叠在一起(Jokerman PDF 呈现正确):
警告输出
此脚本会生成以下警告消息。
会话信息
我现在的sessionInfo()
尝试的解决方案
- 我尝试了几种重命名生成的 AMF 文件的方法,但均无济于事
- 我认为也许我的源文件的编码可能很重要,所以我将其更改为 UTF-8(没有更改)
- 多次重置 extrafontdb
- 多次重新安装ghostscript
解决方法
我目前有两种解决方法,但是,出于便携性考虑,我更喜欢使用 R 或 ggplot 中配置的“本机”PDF设备
- 将 cairo_pdf 指定为设备(这可能会导致输出出现次要问题或某些绘图的渲染略有不同)。PDF 很好,那么这是否指向默认 PDF 设备中的错误?
- 使用 PNG/位图输出(我想在打印中使用绘图,所以首选矢量输出)
- 默认使用 ArialMT 依赖 R。我不确定 ArialMT 是否与我的(Latex)文档中使用的字体完全相同,所以我想明确指定字体。
r - ggplot中的字体系列不会改变
我的情节有效,但我无法改变字体系列。它始终保持默认值,即使我可以更改其他内容,例如颜色、大小和对齐方式。
这是我的代码:
r - 你如何更改ggplot2中的字体?
我最近了解到,我需要使论文的字体与嵌入图形的字体保持一致。由于我决定使用 Times New Roman 作为正文,我需要重新审视我的数字并使用相同的字体对其进行编码。不幸的是,我原本想的一个简单的功能已经变成了一个巨大的头痛。按照其他人的建议,我继续安装了“extrafont”包并加载了我设备上所有可用的字体(我在 Macbook 上运行,仅供参考)。在使用了我可以从其他堆栈溢出查询中搜索到的所有必要代码后,我看到了我的图形预览,显示了正确的字体(再次,Times New Roman)。但是,在尝试使用 ggsave 函数导出它时,头痛就开始了。不幸的是,我收到以下错误:
有 50 个或更多警告(使用 warnings() 查看前 50 个)
在运行建议的函数以了解有关这些警告的更多信息时,我看到了一长串相同的重复错误:
等等。这里发生了什么以及如何在我的代码中修复它?下面提供了我使用的代码。是的,在运行 loadfonts(device) 函数时,我被适当地提示接受该函数 (y/n),我一直等到它完全加载,然后再继续我的代码。是的,我在之后立即运行 fonts() 命令仔细检查 Times New Roman 是否在列表中。这是我的代码:
免责声明:我仍然是 R 的相对新手,所以我希望任何建议都清楚并且通常在上述代码的上下文中。提前致谢!
r - 带有自定义字体的 ggplot 在 shinyapps.io 上未正确显示
我可以自定义字体ggplot
:
这呈现为:
我还可以将该绘图和额外字体集成到一个闪亮的应用程序中,该应用程序在本地运行如下:
但是,当我尝试将其部署到 shinyapps.io 时,出现错误:
应用程序无法启动(以代码 1 退出)。
使用 R 注册字体 扫描 www 中的 ttf 文件 ... 从 .ttf 文件中提取 .afm 文件... /srv/connect/apps/21-comic-font/www/comici.ttfWarnung in gzfile(dest, "w") kann komprimierte Datei '/opt/R/3.4.3/lib/R/library/extrafontdb/metrics/comici.afm.gz' nicht öffnen。地面事件。'Permission denied' Fehler in value[3L] : kann Verbindung nicht öffnen Ruft auf: local ... tryCatch -> tryCatchList -> tryCatchOne -> Ausführung angelhalten
我试图通过合并这里的答案来解决这个问题。我将.ttf
文件添加到www
目录中,并将extrafontdb
包源添加到r-lib
目录中。(当然,我同时部署了两者..)。
完整的app.R
文件现在看起来像:
当我部署它时,我得到一个正在运行的应用程序和以下输出:
现在奇怪的是,它renderText(print(fonts()))
打印Comic Sans MS。所以似乎我的字体被加载了。但是该图没有显示正确的字体。
这是为什么?我该如何解决?
r - 使用 ggplot2 的 extrafont 或 showtext 在 R 中导入女性和男性符号的字体
我正在尝试在ggplot
图中使用女性 ♀ 和男性 ♂ 符号。当我加载extrafont
包并运行所需的代码时,它不起作用(类似于这篇文章)。
我在 Mac OS X 版本 10.11.6 上,使用 R for Mac OS X 版本 3.5.2。
错误信息:
正在扫描 /Library/Fonts/、/System/Library/Fonts、~/Library/Fonts/ 中的 ttf 文件...从 .ttf 文件中提取 .afm 文件... data.frame 中的错误(fontfile = ttfiles, FontName = " ", stringsAsFactors = FALSE) :参数暗示不同的行数:0、1
并仔细检查:
有谁知道为什么会发生这种情况以及如何让它正常运行?
更新:
或者,我可以让 Calibri 使用不同的包加载(请参阅此处的 OP )。但是,我仍然无法让 ♀ 和 ♂ 符号出现在我的ggplot
. 建议?
r - ggplot2中的特定字体未保存到pdf错误
我正在尝试将多个图保存到一个 pdf,通常我使用:
但是,我想在图中使用特定的字体。
因此,我已经下载并安装了fontextra
包,安装并加载了字体loadfonts(device = "win")
。然后我theme(text=element_text(family="Calibri"))
在 ggplot 调用中使用。当我重新运行代码时,单个图在 R 本身中看起来会很好。我也可以成功地使用 grid.arrangegridExtra
来排列它们并在 R 本身中检查它们。但是,当我使用:
我收到一堆与字体相关的错误:
我也试过了,ggsave
但是还是不行,求大神帮忙!
谢谢
r - 安装字体以便 R postscript() 设备可以识别它们
根据这篇文章中的建议,我正在尝试将衬线字体(或“字体系列”)安装到 R 中,以便可以将 ggplots 保存为 .eps 文件。尽管提供的建议有效,但我想尝试解决该问题以供将来使用。
这是生成问题的代码。
现在当我去保存这个数字时,我得到了这个错误
哪个抛出错误
在上一篇文章中,回答者建议我下载extrafont
包。
我跑了
但是似乎没有安装衬线字体。
然后我尝试了
但我得到了错误
有谁知道如何安装衬线字体以便 R 可以识别/使用它?
r - extrafont::loadfonts(device = "win") 在 Rprofile 中不起作用,但在控制台中很好
我试图按照 Will Chase 的建议将 loadfonts 行放在 .RProfile 文件中,这样我就可以在通常加载 ggplot2 之前执行。他的建议
不知怎的,我在写的时候遇到了这个有趣的现象:
RStudio 报错
一定是一些幕后魔术。不过,一旦我把手放在控制台上,我就可以运行extrafont::loadfonts(device = "win")
,它将使用 R 注册字体windowsFonts()
。
解释 .RProfile 时似乎windowsFonts
功能不可用。不知道为什么,如果能帮助我解决这个问题,我们将不胜感激。