在 Ubuntu 上使用 R 获取抗锯齿图

2024-04-01

我升级了系统并重新安装了 R,现在我的标准 X-11 绘图没有抗锯齿——它们看起来呈锯齿状,而且字体看起来很糟糕。

我似乎记得过去有过这样的问题,但不记得我做了什么。

其他一些信息:

  • qplot也出来了非抗锯齿
  • 绘制到一个png设备也产生非抗锯齿输出
  • 绘制到一个pdf然而,该设备可以产生漂亮的抗锯齿输出

另一件事:我已经运行这个版本的 R/Ubuntu 一段时间了,大约几个月了。我不知道这个绘图问题是在安装新的 R 后立即出现的,还是我在那之后做了一些事情来打破它。我不记得以前注意到过缺乏抗锯齿功能,但我可能没有注意或做了很多绘图。

有人知道修复方法是什么吗?目前我正在运行 R 3.2.1,从源代码编译,使用 Ubuntu 14.04.3 LTS。

还有一些事情。下列的这里的讨论 https://stackoverflow.com/questions/1898101/qplot-and-anti-aliasing-in-r我尝试安装 Cairo,但失败了。另外,我过去已经能够在 R/linux 中获得非抗锯齿图而无需安装 Cairo,如果没有必要,我宁愿不安装额外的东西。

这是我的X11.options():

$display
[1] ""

$width
[1] NA

$height
[1] NA

$pointsize
[1] 12

$bg
[1] "transparent"

$canvas
[1] "white"

$gamma
[1] 1

$colortype
[1] "true"

$maxcubesize
[1] 256

$fonts
[1] "-adobe-helvetica-%s-%s-*-*-%d-*-*-*-*-*-*-*"
[2] "-adobe-symbol-medium-r-*-*-%d-*-*-*-*-*-*-*"

$family
[1] "sans"

$xpos
[1] NA

$ypos
[1] NA

$title
[1] ""

$type
[1] "Xlib"

$antialias
[1] "default"

我正在运行 R 3.4.0,并且默认情况下会得到抗锯齿线、“点”和绘图轴X11() and png()设备。

但是,我的系统上需要安装某些“Microsoft 字体”软件包才能获得抗锯齿文本。我不能代表 Ubuntu,但在 Arch Linux 上,包名称是“ttf-ms-fonts”和“fontconfig-ttf-ms-fonts”,两者都在 AUR 中。良好的 Google 搜索应该会为您自己的系统找到类似的软件包。

这是由png()安装或未安装“ttf-ms-fonts”的设备。

  • 没有“ttf-ms-fonts”:
  • 使用“ttf-ms-fonts”:

我希望可以看到两个图中的直线和圆圈都是抗锯齿的,但只有第二个图具有抗锯齿文本。

这是我用来生成上述图的代码:

set.seed(1);
brownian=cumsum(runif(1e3,min=-1));
png("brownian-no-msfonts.png",height=400);
par(cex=1.3);
plot(brownian,ylim=c(-10,15),
    ylab="Position",xlab="Time",main="Brownian Motion");
lines(brownian+7);
dev.off()

我已经确认我需要“ttf-ms-fonts”和“fontconfig-ttf-ms-fonts”(我认为后者配置了默认使用的某些字体),以便在 R 中获取抗锯齿文本,尽管只需要第一个包,例如在 Firefox 中获取抗锯齿文本。

然而,我一直在使用“knitr”包,我注意到如果我使用“rmarkdown”包中的“render”编译我的文档,那么它可以生成带或不带“ttf-ms-”的抗锯齿图。安装了“字体”包。我还没弄清楚它是如何做到这一点的。我知道它运行 Pandoc,它会生成带有嵌入字体的 HTML,但我不确定“rmarkdown”包本身是否包含字体,或者它是否只是更好地了解在我的系统上在哪里可以找到好的字体。

我觉得花时间在这上面很肤浅,但无论如何。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

在 Ubuntu 上使用 R 获取抗锯齿图 的相关文章

  • 如何控制knitr kable科学记数法?

    我有一个像这样的数据框 gt summary variable value 1 var1 5 810390e 06 2 var2 5 018182e 06 3 var3 5 414286e 06 4 var4 3 000779e 02 5
  • FLTK 1.4 小部件位置 w.r.t. X11 根窗口?

    context 我正在和其他人一起编码参考系统 http refpersys org C 17 上的 GPLv3 项目gitlab https gitlab com bstarynk refpersys适用于 GNU Linux x86 6
  • igraph 中的颜色特定节点

    我正在尝试为节点 6 和 7 着色 无论从对象 d 中选择什么字母 g lt graph from literal 1 2 3 4 5 6 7 Rename sum up all the vertices d lt c a b c d e
  • 如何使用复选框以交互方式过滤 visNetwork 中的节点/边? (使用R闪亮)

    使用 Shiny 和 visNetwork R 包我创建了一个交互式网络可视化 我希望用户能够通过使用用户界面中的复选框来删除 添加节点和边 我设法让它部分工作 但不知何故 当过滤多个项目时 我的解决方案不起作用 可以查看我试图实现的行为的
  • R 中卡方的事后测试

    我有一张看起来像这样的桌子 gt dput theft loc structure c 13704L 14059L 14263L 14450L 14057L 15503L 14230L 16758L 15289L 15499L 16066L
  • 如果我设置 echo=FALSE,R Markdown 会使自定义绘图消失

    我创建了一个自定义函数 它将 mfrow 设置为 nxn 并根据数据框的输入列表创建 n 2 个散点图 每个图上有多个数据集 我的绘图函数的签名如下所示 plot return list lt function df list num pl
  • 使用 ggplot2 表示散点图中每个点的小饼图

    我想创建一个散点图 其中每个点都是一个小饼图 例如考虑以下数据 foo lt data frame X runif 30 Y runif 30 A runif 30 B runif 30 C runif 30 下面的代码将绘制一个散点图 代
  • Phong 着色问题

    我正在根据以下内容编写着色器冯模型 http en wikipedia org wiki Phong reflection model 我正在尝试实现这个方程 其中 n 是法线 l 是光线方向 v 是相机方向 r 是光反射 维基百科文章中更
  • 如何使用plotly包绘制用一种缩放颜色着色的饼图

    我有这个示例数据框 gt Data Produits Pourcentages 1 Cr me de jour 27 10 2 s rum 14 50 3 Cr me de nuit 13 80 4 masque 8 82 5 d maqu
  • 如何在 R 中导入 matlab 表

    我有一个matlab mat文件与表数据类型我想将其导入 R 中 我为此使用 readMat R 正在将其作为列表读取 之后有没有办法将列表转换为 R 中的数据帧或表格格式 当我使用as dataframe我收到以下错误 Error in
  • 在 dplyr::filter 中传递字符串作为变量名

    我使用 mtcars 数据集来说明我的问题 例如 我想将数据子集到 4 缸汽车 我可以这样做 mtcars gt filter cyl 4 在我的工作中 我需要传递一个字符串变量作为我的列名 例如 var lt cyl mtcars gt
  • 在 R 中的异常处理中赋值

    while bo 10 x tryCatch getURLContent Site verbose F curl handle error function e cat ERROR1 e message n Sys sleep 1 prin
  • 为什么 R 3.6.0 在计算表达式 ("Dogs" < "cats") 时返回 FALSE?

    我有一些复杂的代码 但我不会向您展示这些代码 而是要提取问题的本质 评价 dogs lt cats 这应该评估为FALSER 3 6 也是如此 评价 Dogs lt cats 这应该评估为TRUE因为 D 的 ASCII 代码是 68 而
  • 如何在闪亮的应用程序中垂直居中操作按钮?

    我有两个按钮在我的列中水平居中 但无法弄清楚如何垂直居中 我尝试使用 垂直对齐中间 下面是我的用户界面代码 ui lt shinyUI fluidPage tags style HTML buttons background color y
  • Python:文本覆盖在所有窗口顶部,包括 Linux 中的全屏

    我正在尝试用 python 编写一个简单的脚本 在所有窗口和全屏应用程序之上输出文本 该脚本的目的是以类似于 Steam FPS 计数器工作方式的方式输出平均负载和可用内存 以及其他有用的统计数据 到目前为止 我尝试了 pygame 但据我
  • 如何在 R 中将包含符号的绘图写入 PDF?

    我想在 R 中的箱形图的 x 轴上使用无穷大符号 我想将其写入 PDF 文件 我可以通过这样做来设置无穷大符号 names data 9 lt 但这让我在尝试编写时出现编码错误 conversion failure on in mbcsTo
  • R 中列表的不区分大小写搜索

    我可以在字符列表中搜索不知道字符串大小写的字符串吗 或者更一般地说 我试图引用数据框中的列 但我不确切知道这些列的大小写 我的想法是搜索names myDataFrame 以不区分大小写的方式返回列的正确外壳 我建议grep 函数及其一些附
  • 对于缺少基线点的重复 ID,从基线进行更改

    对于缺少基线点的重复 ID 从基线进行更改 类似的问题已被提出并回答如下 重复 id 相对于基线的变化 https stackoverflow com questions 31619437 change from baseline for
  • 具有可变字体系列的 geom_text 图例

    我想要geom text 标签根据变量采用字体系列 按照上面的例子ggplot2 文档 http docs ggplot2 org current geom text html 向下滚动到底部 我已经这样做了 与 ggplot 文档示例相同
  • 根据另一行中另一列的值将列添加到数据框

    我正在寻找我的具体问题的答案 但没有找到结论 我找到了这个 根据其他列的值将列添加到数据框 https stackoverflow com questions 26067161 add column to data frame based

随机推荐

  • Kafka应用程序启动时无法配置主题,但稍后可以通信

    我们有一个使用 spring kafka 2 2 5 RELEASE 的 Spring Boot 应用程序 在启动时总是出现此错误 Could not configure topics org springframework kafka K
  • 如何对齐指针

    如何将指针与 16 字节边界对齐 我找到了这段代码 不确定是否正确 char p malloc 1024 if unsigned long p 16 0 unsigned char chpoint unsigned char p chpoi
  • pandas 在多列上搜索子字符串

    我有一个 df 这样 c name f name 0 abc abc12 1 xyz abc1 2 mnq mnq2 目标是在两列中找到一个子字符串并知道它属于哪一列 优先选择应该是c name 就像子字符串在两列中一样c name获得优先
  • 学习 XQuery 的简单工具? [关闭]

    Closed 这个问题不符合堆栈溢出指南 help closed questions 目前不接受答案 我开始玩XQuery 在 w3schools 1 上 这是一个很好的教程 我只是遇到一些问题 我无法测试网站上的内容 我在网上找到了一个X
  • **正确地**从字符串创建 lambda 函数

    给定一个字符串 例如 2 i j lt 100 我想生成相应的lambda函数 fn lambda i j 2 i j lt 100 我可以这样做eval 但我正在寻找一种不那么邪恶的方法 我已经发现 import ast f ast La
  • Firebase 重置密码链接不起作用

    我正在使用 firebase 对我的 Android 应用程序中的用户进行身份验证 我为用户提供了在登录窗口中重置密码的选项 当用户单击按钮时 它会成功发送电子邮件 但是 当用户单击链接时 它总是显示 再次尝试重置密码 您重置密码的请求已过
  • 调用堆栈不说“你从哪里来”,而是说“你下一步要去哪里”?

    在上一个问题中 获取对象调用层次结构 https stackoverflow com questions 6583883 get object call hierarchy 我有这个有趣的答案 https stackoverflow com
  • 如何在 WPF 中拉伸位图而不平滑像素

    我正在开发用 WPF 编写的 SEM 图像处理应用程序 我有一个源自 Canvas 的图像显示控件 它使用 DrawingVisuals 显示图像和叠加层 每个 层 一个 它还使用应用于 DrawingVisuals 的缩放和平移变换来实现
  • 使用Imagemagick,如何裁剪白色背景?

    假设我有一个充满标志的目录 大约 200 个 每个标志都有这个边框 上下 12 像素 左右 1 像素 像这样 我如何使用 imagemagick 来 将每个 PNG 图像从 64x64 裁剪到 60x40 你有自动裁剪 mogrify tr
  • 程序类型已存在:com.google.common.util.concurrent.ListenableFuture 重复类

    我无法构建我的项目 因为我尝试添加的每个新依赖项都会充满新错误 我尝试使用 IDE 将我的项目迁移到 androidx 库 但这并没有解决任何问题 现在我有这些库 dependencies implementation fileTree d
  • 更新虚拟机选项后 Android Studio 无法启动

    我最近在运行 OSX 10 11 的 Mactop pro 上安装了 android studio 使用标准 Apple JRE JDK 我遇到了 IDE 速度慢和模拟器挂起的问题 经过一些研究后 建议我将 VM 选项设置为 Xmx2048
  • Symfony2 Jobeet 教程第 3 天错误无效映射

    当我用代码生成捆绑实体时 php app console doctrine generate entities EnsJobeetBundle 我收到这个错误 学说 通用 持久性 映射 映射异常 类 Ens JobeetBundle Ent
  • NullReferenceException 尝试读取连接字符串

    我有两个项目 一种是 Web 另一种是 Windows 窗体 Web项目连接到数据库 但Windows项目在读取连接字符串时抛出异常NullReferenceException 我使用相同的类来连接两个项目 使用 LINQTOSQL 建立连
  • Visual Studio Code clang 错误:Mac 上的链接器命令失败,退出代码 1

    我是编程新手 想尝试使用 VS Code 进行 C 开发 我收到此错误 但无法在线找到解决方案 clang 错误 链接器命令失败 退出代码为 1 使用 v 查看调用 终端进程终止并退出代码 1 我得到了一个包含函数定义的 cpp 文件和一个
  • 如何从字符串中删除“http://”部分?

    我有这个方法 private List
  • Facebook API:Instagram 帐户丢失

    每当创建或更新Ad很有创意 但我收到此错误 error message Invalid parameter type OAuthException code 100 error subcode 1772103 is transient fa
  • 在 AVPlayer 中播放网络状况不佳的流媒体

    当 AVPlayer 播放来自网络流的资源时 它会在到达下载内容的末尾时暂停 所以 我的问题是 如何知道它是因为网络不好而停止的 下载后如何播放 比如说 接下来的 10 秒资源 当 AVPlayer 的缓冲区为空时 您可以添加一个观察者 s
  • 如何替换不可打印的 unicode 字符 (Javascript)

    我已经浪费了大量的时间来处理字符串 由其他一些源生成 并且我发现问题在于字符串具有不可打印的字符 今天我正在处理 javascript 有谁知道如何替换javascript中不可打印的unicode字符 我在这里发现了类似的东西 如何在 J
  • 以适度可扩展的方式交付活动提要项目

    我正在开发的应用程序有一个活动源 每个用户都可以在其中看到他们朋友的活动 很像 Facebook 我正在寻找一种适度可扩展的方式来动态显示给定用户的活动流 我说 适度 是因为我希望只用一个数据库 Postgresql 来做到这一点并且may
  • 在 Ubuntu 上使用 R 获取抗锯齿图

    我升级了系统并重新安装了 R 现在我的标准 X 11 绘图没有抗锯齿 它们看起来呈锯齿状 而且字体看起来很糟糕 我似乎记得过去有过这样的问题 但不记得我做了什么 其他一些信息 qplot也出来了非抗锯齿 绘制到一个png设备也产生非抗锯齿输