Visnetwork 中的 Unicode 字符未显示

问题描述

我尝试使用 R、igraph 和 Visnetwork 库创建网络可视化。

我在 localhost Apache 服务器上运行它,该服务器通过 PHP 和特定的 Rscript 在 wiki 的每个页面上创建网络(使用 DokuWiki 创建)。它基本上是在 Wiki 的当前命名空间中创建所有页面链接的网络,并将其显示在命名空间的每个页面的顶部,突出显示当前页面的节点。

它工作正常,唯一的问题是在网络中显示这样的特殊字体字符。例如,我已经厌倦了 Pāṭimokkha,它显示 P<c4><81><e1><b9><ad>imokkha(见图)

enter image description here

我读到可能是 visnetwork 使用的字体不包含这些特殊字符。是否可以向库中添加字体?

还是其他原因造成了问题?

感谢您的帮助

解决方法

好的,所以这个奇怪的字符 <c4><81> 是十六进制的 UTF-8。 see this website for testing

经过测试,它们在创建网络时显示为 VisSave 函数的输出。

我的解决方案是创建一个函数:

function utf8hex ($string) {
    $string = str_replace('<c4><81>','ā',$string);
    return ($string);
}

并替换出现的字符 one by one ;-)。有一些 ut8decode 函数可以使用,但比我的解决方案更复杂。

干杯。