**************************************. *Making Fake Data. set seed = 10. input program. loop #i = 1 to 500. compute case = #i. end case. end loop. end file. end input program. dataset name sim. execute. *making 30 likert scale variables. vector Likert(30, F1.0). do repeat Likert = Likert1 to Likert30. compute Likert = TRUNC(RV.UNIFORM(1,6)). end repeat. execute. value labels Likert1 to Likert30 1 'SD' 2 'D' 3 'N' 4 'A' 5 'SA'. **************************************. **************************************. varstocases /make Likert From Likert1 to Likert30 /index Question (Likert). **************************************. *************************************** *I need to make a variable to panel by. compute panel = 0. if Likert > 3 panel = 1. ***************************************. ***************************************. temporary. select if Likert <> 3. GGRAPH /GRAPHDATASET NAME="graphdataset" VARIABLES=Question COUNT()[name="COUNT"] Likert panel MISSING=LISTWISE REPORTMISSING=NO /GRAPHSPEC SOURCE=INLINE. BEGIN GPL SOURCE: s=userSource(id("graphdataset")) COORD: transpose(mirror(rect(dim(1,2)))) DATA: Question=col(source(s), name("Question"), unit.category()) DATA: COUNT=col(source(s), name("COUNT")) DATA: Likert=col(source(s), name("Likert"), unit.category()) DATA: panel=col(source(s), name("panel"), unit.category()) GUIDE: axis(dim(1), label("Question")) GUIDE: axis(dim(2), label("Count")) GUIDE: axis(dim(3), null(), gap(0px)) GUIDE: legend(aesthetic(aesthetic.color.interior), label("Likert")) SCALE: linear(dim(2), include(0)) SCALE: cat(aesthetic(aesthetic.color.interior), sort.values("1","2","5","4"), map(("1", color.blue), ("2", color.lightblue), ("4", color.lightpink), ("5", color.red))) ELEMENT: interval.stack(position(Question*COUNT*panel), color.interior(Likert), shape.interior(shape.square)) END GPL. ***************************************. ***************************************. compute rand = RV.NORMAL(0,1). AUTORECODE VARIABLES=Question /INTO QuestionN. RANK VARIABLES=rand (A) BY QuestionN Likert /NTILES (2) INTO RankT /PRINT=NO /TIES=CONDENSE . if Likert = 3 and RankT = 2 panel = 1. ***************************************. ***************************************. GGRAPH /GRAPHDATASET NAME="graphdataset" VARIABLES=Question COUNT()[name="COUNT"] Likert panel MISSING=LISTWISE REPORTMISSING=NO /GRAPHSPEC SOURCE=INLINE. BEGIN GPL SOURCE: s=userSource(id("graphdataset")) COORD: transpose(mirror(rect(dim(1,2)))) DATA: Question=col(source(s), name("Question"), unit.category()) DATA: COUNT=col(source(s), name("COUNT")) DATA: Likert=col(source(s), name("Likert"), unit.category()) DATA: panel=col(source(s), name("panel"), unit.category()) GUIDE: axis(dim(1), label("Question")) GUIDE: axis(dim(2), label("Count")) GUIDE: axis(dim(3), null(), gap(0px)) GUIDE: legend(aesthetic(aesthetic.color.interior), label("Likert")) SCALE: linear(dim(2), include(0)) SCALE: cat(aesthetic(aesthetic.color.interior), sort.values("1","2","5","4", "3"), map(("1", color.blue), ("2", color.lightblue), ("3", color.white), ("4", color.lightpink), ("5", color.red))) ELEMENT: interval.stack(position(Question*COUNT*panel), color.interior(Likert),shape.interior(shape.square)) END GPL. ***************************************. ***************************************. GGRAPH /GRAPHDATASET NAME="graphdataset" VARIABLES=Question COUNT()[name="COUNT"] Likert panel MISSING=LISTWISE REPORTMISSING=NO /GRAPHSPEC SOURCE=INLINE. BEGIN GPL SOURCE: s=userSource(id("graphdataset")) COORD: transpose(mirror(rect(dim(1,2)))) DATA: Question=col(source(s), name("Question"), unit.category()) DATA: COUNT=col(source(s), name("COUNT")) DATA: Likert=col(source(s), name("Likert"), unit.category()) DATA: panel=col(source(s), name("panel"), unit.category()) GUIDE: axis(dim(1), label("Question")) GUIDE: axis(dim(2), label("Count")) GUIDE: axis(dim(3), null(), gap(0px)) GUIDE: legend(aesthetic(aesthetic.color.interior), label("Likert")) SCALE: linear(dim(2), include(0)) SCALE: cat(aesthetic(aesthetic.color.interior), sort.values("1","2","5","4", "3"), map(("1", color.blue), ("2", color.lightblue), ("3", color.lightgrey), ("4", color.lightpink), ("5", color.red))) ELEMENT: interval.stack(position(Question*COUNT*panel), color.interior(Likert),shape.interior(shape.square),transparency.exterior(transparency."1")) END GPL. ***************************************. ******************************. *Aggregate N per question. AGGREGATE OUTFILE=* MODE=ADDVARIABLES /BREAK Question /TotalPerQ = N. *Use trans to make a percent. GGRAPH /GRAPHDATASET NAME="graphdataset" VARIABLES=Question MEAN(TotalPerQ)[name="MeanTotalPerQ"] COUNT()[name="COUNT"] Likert panel MISSING=LISTWISE REPORTMISSING=NO /GRAPHSPEC SOURCE=INLINE. BEGIN GPL SOURCE: s=userSource(id("graphdataset")) COORD: transpose(mirror(rect(dim(1,2)))) DATA: Question=col(source(s), name("Question"), unit.category()) DATA: COUNT=col(source(s), name("COUNT")) DATA: MeanTotalPerQ=col(source(s), name("MeanTotalPerQ")) DATA: Likert=col(source(s), name("Likert"), unit.category()) DATA: panel=col(source(s), name("panel"), unit.category()) TRANS: Perc = eval(COUNT/MeanTotalPerQ) GUIDE: axis(dim(1), label("Question")) GUIDE: axis(dim(2), label("Percent")) GUIDE: axis(dim(3), null(), gap(0px)) GUIDE: legend(aesthetic(aesthetic.color.interior), label("Likert")) SCALE: linear(dim(2), include(0)) SCALE: cat(aesthetic(aesthetic.color.interior), sort.values("1","2","5","4", "3"), map(("1", color.blue), ("2", color.lightblue), ("3", color.lightgrey), ("4", color.lightpink), ("5", color.red))) ELEMENT: interval.stack(position(Question*Perc*panel), color.interior(Likert),shape.interior(shape.square),transparency.exterior(transparency."1")) END GPL. ******************************.