Learn R Programming

PAFit (version 1.2.10)

plot.PAFit_result: Plotting the estimated attachment function and node fitness of a PAFit_result object

Description

This function plots the estimated attachment function \(A_k\) and node fitness \(eta_i\), together with additional information such as their confidence intervals or the estimated attachment exponent (\(\alpha\) when assuming \(A_k = k^\alpha\)) of a PAFit_result object. This object is stored in the field $estimate_result of a Full_PAFit_result object, which in turn is the returning value of only_A_estimate, only_F_estimate or joint_estimate.

Usage

# S3 method for PAFit_result
plot(x,
    net_stat       = NULL    ,
    true_f         = NULL    , plot             = "A"              , plot_bin   = TRUE ,
    line           = FALSE   , confidence       = TRUE             , high_deg_A = 1    ,
    high_deg_f     = 5       ,
    shade_point    = 0.5     , col_point        = "grey25"         , pch        = 16   ,
    shade_interval = 0.5     , col_interval     = "lightsteelblue" , label_x    = NULL , 
    label_y        = NULL    ,
    max_A          = NULL    , min_A            = NULL             , f_min      = NULL , 
    f_max          = NULL    , plot_true_degree = FALSE , 
    ...)

Value

Outputs the desired plot.

Arguments

x

An object of class PAFit_result.

net_stat

An object of class PAFit_data, containing the summerized statistics.

true_f

Vector. Optional parameter for the true value of node fitnesses (only available in simulated datasets). If this parameter is specified and plot == "true_f", a plot of estimated \(\eta\) versus true \(\eta\) is produced (after a suitable rescaling of the estimated \(f\)).

plot

String. Indicates which plot is produced.

  • If "A" then PA function is plotted.

  • If "f" then the histogram of estimated fitness is plotted.

  • If "true_f" then estimated fitness and true fitness are plotted together (require supplement of true fitness).

Default value is "A".

plot_bin

Logical. If TRUE then only the center of each bin is plotted. Default is TRUE.

line

Logical. Indicates whether to plot the line fitted from the log-linear model or not. Default value is \(TRUE\).

confidence

Logical. Indicates whether to plot the confidence intervals of \(A_k\) and \(eta_i\) or not. If confidence == TRUE, a 2-sigma confidence interval will be plotted at each \(A_k\) and \(eta_i\).

high_deg_A

Integer. The estimated PA function is plotted starting from high_deg_A. Default value is 1.

high_deg_f

Integer. If plot == "true_f", only nodes whose number of edges acquired is not less than high_deg_f are plotted. Default value is 5.

col_point

String. The name of the color of the points. Default value is "black".

shade_point

Numeric. Value between 0 and 1. This is the transparency level of the points. Default value is 0.5.

pch

Numeric. The plot symbol. Default value is 16.

shade_interval

Numeric. Value between 0 and 1. This is the transparency level of the confidence intervals. Default value is 0.5.

max_A

Numeric. Specify the maximum of the axis of PA.

min_A

Numeric. Specify the minimum of the axis of PA.

f_min

Numeric. Specify the minimum of the axis of fitness.

f_max

Numeric. Specify the maximum of the axis of fitness.

plot_true_degree

Logical. The degree of each node is plotted or not.

label_x

String. The label of x-axis.

label_y

String. The label of y-axis.

col_interval

String. The name of the color of the confidence intervals. Default value is "lightsteelblue".

...

Other arguments to pass to the underlying plotting function.

Author

Thong Pham thongphamthe@gmail.com

Examples

Run this code
  ## Since the runtime is long, we do not let this example run on CRAN
  if (FALSE) {
    library("PAFit")
    set.seed(1)
    # a network from Bianconi-Barabasi model
    net        <- generate_BB(N        = 1000 , m             = 50 , 
                              num_seed = 100  , multiple_node = 100,
                              s        = 10)
    net_stats  <- get_statistics(net)
    result     <- joint_estimate(net, net_stats)
    #plot A
    plot(result$estimate_result , net_stats , plot = "A")
    true_A     <- c(1,result$estimate_result$center_k[-1])
    lines(result$estimate_result$center_k + 1 , true_A , col = "red") # true line
    legend("topleft" , legend = "True function" , col = "red" , lty = 1 , bty = "n")
    #plot true_f
    plot(result, net_stats , net$fitness, plot = "true_f")
  }

Run the code above in your browser using DataLab