2017-06-17 24 views
2

Ich frage mich, wie man verschiedene Größen für verschiedene Knoten unter Verwendung semPlot für ein SEM-Modell mit lavaan einstellen.semPaths - Knoten unterschiedlicher Größe für lavaan SEM

library(lavaan) 
library(semPlot) 

model <- ' 
    # measurement model 
    ind60 =~ x1 + x2 + x3 
    dem60 =~ y1 + y2 + y3 + y4 
    dem65 =~ y5 + y6 + y7 + y8 
    # regressions 
    dem60 ~ ind60 
    dem65 ~ ind60 + dem60 
    # residual correlations 
    y1 ~~ y5 
    y2 ~~ y4 + y6 
    y3 ~~ y7 
    y4 ~~ y8 
    y6 ~~ y8 
' 
fit <- sem(model, data=PoliticalDemocracy) 

semPlot gibt

semPaths(fit, whatLabels="std", style="lisrel", exoCov = T, curvePivot = TRUE, sizeMan = 3, sizeInt = 5, 
    residuals=F) 

enter image description here

Allerdings möchte ich diese enter image description here

+1

optimal nicht, aber Sie können die Größe manuell ändern: assign semPlot: 's <- semPaths (... ', und ändern dann node height und width,' s $ graphAttributes $ Knoten $ height [1: 3] <- 8; s $ graphAttributes $ Knoten $ width [1: 3] <- 8; plot (s) ' – user20650

Antwort

1

ich dies für meine Diplomarbeit tat

semPaths(fit, style="lisrel", 
     whatLabels = "std", edge.label.cex = .6, node.label.cex = .6, 
     label.prop=0.9, edge.label.color = "black", rotation = 4, 
     equalizeManifests = FALSE, optimizeLatRes = TRUE, node.width = 1.5, 
     edge.width = 0.5, shapeMan = "rectangle", shapeLat = "ellipse", 
     shapeInt = "triangle", sizeMan = 4, sizeInt = 2, sizeLat = 4, 
     curve=2, unCol = "#070b8c") 

Völlig hässlich, aber gutes Ergebnis am Ende!

Die vollständige SEM-Analyse ist hier https://github.com/pachamaltese/thesis

Ich schrieb auch ein komplettes Tutorial in zwei Teile für mein Blog: http://pacha.hk/tag/structural-equation-modelling-sem.html

+0

hi, dein Code scheint nicht mit dem Beispiel zu arbeiten, kannst du angeben, woher' onefactormeasures' kommt? Danke – giacomo

Verwandte Themen