« UCSCBin is now on RubyGems.org | メイン | BMB2010でポスター発表してきました »

2010年11月28日

R言語のX11ウィンドウ再描画トラブル

CentOS 5.5/KDE/XVNCの環境でR言語/GNU Rを使っているのですが, X11のウィンドウが他のウィンドウに隠れた際などに必要な再描画をしてくれず, リサイズして強制的に表示させて対処していました。とてもうっとうしいので 解決法を探していたのですが,見つからない。そこでR 2.12.0インストールを期に もういちど解決にチャレンジしてみました。

試行錯誤の結果,どうやらX11(type="nbcairo")とすると,解決するようです。 "nbcairo"はNo Buffered CAIRO を意味します。描画速度も目に見えて速くなりました。

ホームディレクトリの~/.Rprofileに

setHook(packageEvent("grDevices", "onLoad"),
        function(...) grDevices::X11.options(type="nbcairo"))

と追加すると,X11()のデフォルトがnbcairoになります。

これが,私の環境の,どのコンポーネントのせいなのか,いまだわかりませんが,一応解決しました。 同じようなトラブルの方もいるやもしれませんので,ここに書いておきます。

投稿者 hmishima : 2010年11月28日 16:29