我正在使用julia和gadfly在远程服务器(通过Putty连接)上绘制一些图,这些图应该在默认服务器中打开。它们在山猫中打开,因此看起来并不像什么。我假设lynx是工作服务器上的默认浏览器,我想知道是否可以通过chrome或firefox打开它们?我不是服务器管理员,也没有使用所有命令(即sudo等)的权限。

尝试使用xdg-utils时,出现错误消息“找不到命令”,并且/usr/.local/applications中没有任何应用程序,也无法在目录中找到mimeapps.list。

我有什么办法可以在其他互联网浏览器而不是lynx上打开这些地块?谢谢!

最佳答案

偏好顺序

如果可以,Gadfly会在Julia的显示屏上绘图(例如,如果您正在使用带有Jupyter的交互式图形笔记本)。

如果没有合适的方法在REPLDisplay上进行渲染,Gadfly会将图保存到文件中,然后触发特定于平台的“打开此文件”逻辑。

朱莉娅自己的展示

这几乎肯定是最好的选择。如果您在知道如何显示绘图的环境中运行Julia代码(例如,使用Jupyter的交互式图形笔记本),则无需执行其他操作。

如果必须从文本提示符下运行Julia代码,则可以使用基于文本的后端渲染器,或处理回退过程。

xdg打开

Gadfly的后备显示代码使用xdg-open在基于Linux的系统上显示绘图文件。
xdg-open工具是名为xdg-utils的软件包的一部分。 xdg-utils包包含几个命令,但是xdg-utils本身不是命令-这就是为什么尝试运行“xdg-utils”失败并显示“找不到命令”的原因。
xdg-open具有自己的打开程序链:它将尝试特定于GNOME,KDE或您使用的任何桌面环境的打开程序。它回落到称为“perl-shared-mimeinfo”的位置。
xdg-utils包中的另一个工具是xdg-mime,它可以查询和更改当前文件关联。您需要管理员特权才能更改系统范围的关联,但是不需要任何特殊权限即可添加自己的按用户的关联。

由于Gadfly正在写入文件,然后要求xdg-open打开文件,因此您需要处理文件类型(而不是“浏览器”或URL处理程序)。对于HTML文件,可能看起来像这样:

$ xdg-mime default mybrowser.desktop text/html

哪台计算机运行浏览器?

现在,您提到您正在使用SSH和PuTTY连接到该服务器。 PuTTY为您的服务器提供了基于文本的界面-即使服务器上安装了图形浏览器(如Firefox),PuTTY也无法显示它。 (您在计算机上需要服务器可以用来绘制浏览器窗口的其他内容。)

使用计算机自己的浏览器可能会更舒服。

那我该怎么办?

无论如何,对于服务器计算机而言,启动浏览器有点奇怪,并且实现它可能很奇怪。所以我的建议是:
  • 跳过腻子,直接在Jupyter笔记本中显示。
  • 将输出另存为HTML(或SVGJS),您的计算机的浏览器可以访问它。
  • 10-08 09:03