非常に複雑なデータをプロットする非常に長いスクリプトRがあります。私は自分が何をしているのかを視覚的に把握するためにプロットを使用するだけですが、プロットなしで結果を計算でき、明らかに何もプロットしないと物事がはるかに速くなります。ただし、場合によっては、デバッグを継続するためにプログラムが何を実行するかを視覚化する必要があります。
このプロットの「オンまたはオフ」スイッチを実現するために、私はこの戦略に従っています。
#toplot
スクリプトのプロット機能に関連するコマンドがある行ごとに、関連する各行の最後に特定のコメント付きタグがあります。次に、正規表現置換の力を使用して、次のコマンドでこれらの行をコメント化/コメント解除します。
サンプルコード:
a <- c(1:10)
b <- a/sin(a)
png('sin.png') #toplot
plot(b) #toplot
dev.off() #toplot
print(b)
'タグ付き'行にコメントするには:
:%s/.\+#toplot/###commline###\0/g
私はこれを手に入れます:
a <- c(1:10)
b <- a/sin(a)
###commline### png('sin.png') #toplot
###commline### plot(b) #toplot
###commline### dev.off() #toplot
print(b)
コメントを外すには:
:%s/###commline###//g
私はこれを手に入れます:
a <- c(1:10)
b <- a/sin(a)
png('sin.png') #toplot
plot(b) #toplot
dev.off() #toplot
print(b)
私はコンピューター科学者ではないので、この種の操作を実行するためのより優れた、よりエレガントな方法があるかどうかはわかりません。
編集:データをプロットするには、さまざまな種類のデータがプロットデバイスに収まるように、多くの計算と変換を行う必要があることに注意してください。これらの操作を実行するために、履歴を使用して、必要に応じて上下に移動します。