问题描述
我尝试使用 R、igraph 和 Visnetwork 库创建网络可视化。
我在 localhost Apache 服务器上运行它,该服务器通过 PHP 和特定的 Rscript 在 wiki 的每个页面上创建网络(使用 DokuWiki 创建)。它基本上是在 Wiki 的当前命名空间中创建所有页面和链接的网络,并将其显示在命名空间的每个页面的顶部,突出显示当前页面的节点。
它工作正常,唯一的问题是在网络中显示像宏这样的特殊字体字符。例如,我已经厌倦了 Pāṭimokkha,它显示 P<c4><81><e1><b9><ad>imokkha
(见图)
我读到可能是 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 函数可以使用,但比我的解决方案更复杂。
干杯。