Coerce Bars in PlotColBox per disegnare da 0 OriginHey Community,
Sto cercando di simulare una tabella in un report come si ottiene con TukeyHSD in Adatta Y per X, ma sto riscontrando un problema con il grafico a barre disegnato in un PlotColBox. Le lunghezze delle barre sono tracciate con intervalli di confidenza per ogni barra. Il mio problema è che voglio che le barre vengano disegnate dall'origine in modo da poter vedere visivamente dove il limite di confidenza inferiore scende sotto 0 (indicando un risultato non significativo), ma le barre vengono disegnate dal valore minimo sulla scala . Non riesco a trovare nulla nell'indice di scripting per modificare questo comportamento.
In definitiva, dovrebbe assomigliare strettamente alla trama in questo rapporto delle differenze ordinato:
Ecco cosa sto ottenendo (esempio di lavoro minimo mostrato qui):
Ho impostato l'intervallo sull'asse orizzontale del grafico usando << Set Scale e impostandolo uguale al minimo LCL e al massimo UCL in modo che la trama sia sufficientemente ampia da mostrare tutti i valori LCL e UCL, ma ciò causa le barre da disegnare partendo dallo stesso valore minimo.
Ecco uno script per l'esempio di lavoro minimo:
diffs = {14.5833333333333, 13.25, 13.1666666666667, 12.4166666666667, 11.8333333333333,
11.75, 11, 10.4166666666667, 9.58333333333333, 2.83333333333333, 2.16666666666667,
1.41666666666667, 1.41666666666667, 1.33333333333333, 0.833333333333334};
lcls = {7.61907259396521, 8.36035077512539, 6.22561115938687, 7.05705972526408,
6.99299436545608, 4.7114849776621, 5.68093889133607, 5.37459986573576,
4.09680778320344, -0.348570126295593, -5.63501808685501, -1.64446371477212,
-1.1943038377427, -6.25265936207625, -5.48781669649702};
ucls = {21.5475940727015, 18.1396492248746, 20.1077221739465, 17.7762736080693,
16.6736723012106, 18.7885150223379, 16.3190611086639, 15.4587334675976,
15.0698588834632, 6.01523679296226, 9.96835142018835, 4.47779704810545,
4.02763717107603, 8.91932602874292, 7.15448336316369};
New Window("Results",
tb = Table Box(
Number Col Box("Difference", diffs),
Number Col Box("LCL", lcls),
Number Col Box("UCL", ucls),
Number Col Box("p-Value", p_vals[sort], Set Format(7, 97), Set Conditional Format("pValue")),
Plot Col Box("", diffs, Upper(matrix(ucls)), Lower(matrix(lcls)), Set Scale(min(lcl), max(ucl)))
)
);
Grazie in anticipo per l'aiuto!
Ri: Forza barre in PlotColBox per disegnare da 0 origine @cwillden Questo funziona anche:
scl = evallist({min(lcls), max(ucls)});
New Window("Results",
OutlineBox("Custom Table",
tb = Table Box(
Number Col Box("Difference", diffs),
Number Col Box("LCL", lcls),
Number Col Box("UCL", ucls),
Number Col Box("p-Value", p_vals, Set Format(7, 97), Set Conditional Format("pValue")),
pcb = Plot Col Box("", scl )
)
)
);
pcb << add element(diffs);
pcb << delete row(2);
pcb << delete row(1);
pcb << lower(matrix(lcls));
pcb << upper(matrix(ucls));
Ri: Forza barre in PlotColBox per disegnare da 0 origineGrande idea! Consentitemi di lavorare nel mio script attuale, ma mi aspetto che funzioni perfettamente. Grazie!
Ri: Forza barre in PlotColBox per disegnare da 0 origineCiao Cameron, questo sembra funzionare:
- Correggere la dimensione con valori fittizi
- Rimuovi i manichini.
Names Default to Here(1);
diffs = {14.5833333333333, 13.25, 13.1666666666667, 12.4166666666667, 11.8333333333333,
11.75, 11, 10.4166666666667, 9.58333333333333, 2.83333333333333, 2.16666666666667,
1.41666666666667, 1.41666666666667, 1.33333333333333, 0.833333333333334};
lcls = {7.61907259396521, 8.36035077512539, 6.22561115938687, 7.05705972526408,
6.99299436545608, 4.7114849776621, 5.68093889133607, 5.37459986573576,
4.09680778320344, -0.348570126295593, -5.63501808685501, -1.64446371477212,
-1.1943038377427, -6.25265936207625, -5.48781669649702};
ucls = {21.5475940727015, 18.1396492248746, 20.1077221739465, 17.7762736080693,
16.6736723012106, 18.7885150223379, 16.3190611086639, 15.4587334675976,
15.0698588834632, 6.01523679296226, 9.96835142018835, 4.47779704810545,
4.02763717107603, 8.91932602874292, 7.15448336316369};
p_vals = {.00001, .00002, .00003, .00004, .00005, .0003, .00006, .00007, .0001, .0557,
.9247, .6006, .4466, .9888, .9972
};
ndiffs = Insert(diffs, eval List({min(lcls), max(ucls)} ) );
New Window("Results",
OutlineBox("Custom Table",
tb = Table Box(
Number Col Box("Difference", diffs),
Number Col Box("LCL", lcls),
Number Col Box("UCL", ucls),
Number Col Box("p-Value", p_vals, Set Format(7, 97), Set Conditional Format("pValue")),
pcb = Plot Col Box("", ndiffs)
)
)
);
nr = nitems(ucls);
pcb << delete row(nr+2);
pcb << delete row(nr+1);
pcb <<LOWER></LOWER>
