2016-09-13 5 views

答えて

1

シンプル:あなたは、実装内の別のplot方法にちょうどディスパッチできる最も簡単な場合には

plot.NewClass = function(x, y, ...) { … } 

:ちょうど必要な方法を提供します。

あなたNewClassオブジェクトは、実際に変装してhistogramオブジェクトである場合は、次のトリックを使用することができます:私は本当にここの構文を知らないので、私はRプログラミングに新たなんだ

plot.NewClass = function (x) { 
    # “unmask” histogram object 
    class(x) = 'histogram' 
    plot(x) 
} 
+0

を。どのくらい正確に別のプロットメソッドにディスパッチしますか(この場合は、ヒストグラムオブジェクトのようにプロットしたいです) – ChuckP

+0

@ChuckPそれを呼び出すことによって。あるいは、あなたの関数をヒストグラムの関数と等しくするだけで(もっとも、これらのオブジェクトは本当に似ている必要があります) 'plot.NewClass = graphics ::: plot.histogram' - 3つのコロンをメモします: 'plot.histogram'は' graphics'からはエクスポートされませんので、Rにネームスペース内の隠しオブジェクトにアクセスするように説得する必要があります。これは ':::'を介して行われます。 –

関連する問題