plot.gam()
में हम ध्यान दें कि plot()
x$smooth[[i]]
पर कहा जाता है, जो वर्ग की एक वस्तु है:
class(x$smooth[[i]])
[1] "tprs.smooth" "mgcv.smooth"
वहाँ है वर्ग "mgcv.smooth"
के लिए एक plot()
विधि और यह इस है कि साजिश के लिए इस्तेमाल किया जा रहा है सामान्य मामले में। ?plot.gam
कहा गया है कि यह डिफ़ॉल्ट सबसे smooths के लिए इस्तेमाल किया विधि है, लेकिन वहाँ gam()
द्वारा समर्थित चिकनी के कुछ प्रकार के लिए विशिष्ट विधियों (?plot.gam
के विवरण अनुभाग से कर रहे हैं:
For smooth terms ‘plot.gam’ actually calls plot method functions
depending on the class of the smooth. Currently random effect and
Markov random field smooths have special methods, the rest use the
defaults described below.
किसी कारण से, methods()
है इन तरीकों नहीं मिल रहा है, लेकिन वे मौजूद हैं:
> mgcv:::plot.mgcv.smooth
function (x, P = NULL, data = NULL, label = "", se1.mult = 1,
se2.mult = 2, partial.resids = FALSE, rug = TRUE, se = TRUE,
scale = -1, n = 100, n2 = 40, pers = FALSE, theta = 30, phi = 30,
jit = FALSE, xlab = NULL, ylab = NULL, main = NULL, ylim = NULL,
xlim = NULL, too.far = 0.1, shade = FALSE, shade.col = "gray80",
shift = 0, trans = I, by.resids = FALSE, scheme = NULL, ...)
{
....
यह methods()
में एक बग कि plot.function
मतलब नहीं दिखा था से संबंधित हो सकता सूची में n और मेरे वर्तमान आर उस फिक्स को शामिल नहीं कर सकता है। इस विधि को सामान्य रूप से दिखाया जाना चाहिए, और ऐसी परिस्थितियों में सामान्य सलाह ऑब्जेक्ट की श्रेणी (जैसा कि मैंने ऊपर दिखाया है) की पहचान करना होगा और फिर methods()
और इसी तरह के कार्यों (उदाहरण के लिए showMethods()
) का उपयोग करना होगा ताकि यह पता चल सके कि कक्षा के लिए उपलब्ध विशिष्ट विधियां (es वस्तु वापस लौटा दिया।
बस एक तरफ। । । फ़ंक्शन कॉल में पैरामीटर निर्दिष्ट करते समय आप पैरामीटर के नाम को किसी भी चीज़ पर छोटा कर सकते हैं। इसलिए, यदि हस्ताक्षर में 'P' के साथ _starts_ केवल एक पैरामीटर है, तो आप उस पैरामीटर को 'पी =' द्वारा निर्दिष्ट कर सकते हैं। यह आपके प्रश्न का उत्तर नहीं देता है, इसलिए कारण यह केवल एक टिप्पणी है। – adamleerich