2

最近、R のグリッド グラフ システムについて読みました。これは非常に柔軟で、その熟練度により、非常に洗練されたグラフを作成できるはずです。しかし、サイズ変更可能なグラフをプロットできる適切な場所が見つかりませんでしたか? 質問は次のとおりです。最終出力が実際にサイズ変更可能になるように、gridグラフシステムをどのように使用しますか?R

4

1 に答える 1

4

これを行う 1 つの方法は、グリップ グラフ システムを直接使用するのではなく、そのlatticeインターフェイスを使用することです。lattice私の知る限り、このパッケージは R と共にインストールされTrellis、グリッドベースのグラフである基礎となるグラフへの非常に柔軟なインターフェイスを形成します。Latticeまた、グリッドを直接操作することもできます。実際、最も洗練されたグラフでは、これで十分です。

グリッド グラフ システム自体を実際に使用する場合は、スケーラブルにするために正しい座標系を使用する必要があります。「native」、「npc」(Normalized Parent Coordinates)、または「snpc」(Square Normalized Parent Coordinates) のいずれかを使用すると、現在のビューポートのサイズ (またはその 1 つの側面) に相対的な座標が得られるため、Figure を再スケーリングできます。 .

これらを十分に活用するには、ビューポートの概念をよく理解してください。私はまだそれについて学ぶことがたくさんあることを認めなければなりません。本当にやりたいのなら、Paul Murrell の R Graphicsという本をお勧めします。

その本の第 5 章を詳しく見てみましょう。また、このページにもある例の R コードから多くのことを学ぶことができます。

あなたに1つを与えるには:

grid.circle(x=seq(0.1, 0.9, length=100), 
            y=0.5 + 0.4*sin(seq(0, 2*pi, length=100)),
            r=abs(0.1*cos(seq(0, 2*pi, length=100))))

完全にスケーラブル。のヘルプ ページを見るとgrid.circle、オプションが見つかりdefault.units="npc"ます。この場合、正しい座標系が設定されます。比較する

grid.circle(x=seq(0.1, 0.9, length=100), 
            y=0.5 + 0.4*sin(seq(0, 2*pi, length=100)),
            r=abs(0.1*cos(seq(0, 2*pi, length=100))),
            default.units="inch")

これはスケーラブルではありません。

于 2011-02-11T11:08:38.997 に答える