show                 package:methods                 R Documentation

_S_h_o_w _a_n _O_b_j_e_c_t

_D_e_s_c_r_i_p_t_i_o_n:

     Display the object, by printing, plotting or whatever suits its
     class.  This function exists to be specialized by methods.  The
     default method calls 'showDefault'.

     Formal methods for 'show' will usually be invoked for automatic
     printing (see the details).

_U_s_a_g_e:

     show(object)

_A_r_g_u_m_e_n_t_s:

  object: Any R object

_D_e_t_a_i_l_s:

     The 'methods' package overrides the base definition of
     'print.default' to arrange for automatic printing to honor methods
     for the function 'show'.  This does not quite manage to override
     old-style printing methods, since the automatic printing in the
     evaluator will look first for the old-style method.

     If you have a class 'myClass' and want to define a method for
     'show', all will be well unless there is already a function named
     'print.myClass'.  In that case, to get your method dispatched for
     automatic printing, it will have to be a method for 'print'.  A
     slight cheat is to override the function 'print.myClass' yourself,
     and then call that function also in the method for 'show' with
     signature '"myClass"'.

_V_a_l_u_e:

     'show' returns an invisible 'NULL'.

_S_e_e _A_l_s_o:

     'showMethods' prints all the methods for one or more functions;
     'showMlist' prints individual methods lists;  'showClass' prints
     class definitions. Neither of the latter two normally needs to be
     called directly.

_E_x_a_m_p_l_e_s:

     ## following the example shown in the setMethod documentation ...
     setClass("track",
              representation(x="numeric", y="numeric"))
     setClass("trackCurve", 
              representation("track", smooth = "numeric"))

     t1 <- new("track", x=1:20, y=(1:20)^2)

     tc1 <- new("trackCurve", t1)

     setMethod("show", "track",
       function(object)print(rbind(x = object@x, y=object@y))
     )
     ## The method will now be used for automatic printing of t1

     t1

     ## Not run: 
       [,1] [,2] [,3] [,4] [,5] [,6] [,7] [,8] [,9] [,10] [,11] [,12]
     x    1    2    3    4    5    6    7    8    9    10    11    12
     y    1    4    9   16   25   36   49   64   81   100   121   144
       [,13] [,14] [,15] [,16] [,17] [,18] [,19] [,20]
     x    13    14    15    16    17    18    19    20
     y   169   196   225   256   289   324   361   400
     ## End(Not run)
     ## and also for tc1, an object of a class that extends "track"
     tc1

     ## Not run: 
       [,1] [,2] [,3] [,4] [,5] [,6] [,7] [,8] [,9] [,10] [,11] [,12]
     x    1    2    3    4    5    6    7    8    9    10    11    12
     y    1    4    9   16   25   36   49   64   81   100   121   144
       [,13] [,14] [,15] [,16] [,17] [,18] [,19] [,20]
     x    13    14    15    16    17    18    19    20
     y   169   196   225   256   289   324   361   400
     ## End(Not run)

