Definizione del gradiente di colore personalizzato nella mappa termica del generatore di grafici con JSLHo un modello con otto fattori e quattro risposte. Vorrei creare una mappa del calore che mostri quali fattori sono significativi per quali risposte.Vorrei poter definire la mia scala di colori, ad esempio:
<0,0001 a 0,01 = arancione
Da 0,001 a 0,05 = rosso
> 0,05 = bianco
Ho giocato con il gradiente in Graph Builder ma non riesco a vedere come fare quello che voglio. Forse questo non è più nemmeno tecnicamente un gradiente, ma sembra che dovrebbe essere possibile.L'immagine qui sotto è la più vicina che ho ottenuto.

Ecco un frammento di script. Il set di dati completo con lo script salvato è allegato.
pendenza(
{Tema colore ("Verde giallo rosso"),
Valori di scala ([0 0,05.]),
Larghezza (9),
Tipo di intervallo ("Intervallo di dati esatto"),
Gradiente inverso (1),
Colori discreti (1),
N etichette (5)}
)
Tutti i suggerimenti sarebbero apprezzati.
-Tom
Ri: definizione del gradiente di colore personalizzato nella mappa termica del generatore di grafici con JSLCiao Tom!
È possibile definire i propri temi colore in JMP. Prova qualcosa di simile:
Preferences( Add Color Theme(
{"White to Red p-Value", 2051, {{255, 255, 255}, {255, 255, 255}, {252, 187,
161}, {252, 146, 114}, {251, 106, 74}, {239, 59, 44}, {203, 24, 29}, {165,
15, 21}, {103, 0, 13}}, {0, 0.95, 0.96,
0.97, 0.98, 0.99, 0.995,
0.999, 1}}
),
);I colori sono codificati in valori RGB (es. {255, 255, 255} è bianco) e gli incrementi che ti interessano sono indicati alla fine (es. Il primo 95% della scala di colori sarà bianco come è definito attualmente). Questa è una prima bozza approssimativa, quindi potrebbe essere necessario modificare gli incrementi oi colori proprio come si desidera. Nota che questo creerà un nuovo tema di colore che puoi usare in qualsiasi grafico. Nel grafico, assicurati di includere "min" e "max" per la scala dei colori, altrimenti questo gradiente non inizierà a diventare arancione a 0,05:
gradient(
{Color Theme(
{"White to Red p-Value", 2051, {{255, 255, 255}, {255,
255, 255}, {252, 187, 161}, {252, 146, 114}, {251, 106,
74}, {239, 59, 44}, {203, 24, 29}, {165, 15, 21}, {103,
0, 13}}, {0, 0.95, 0.96, 0.97, 0.98, 0.99, 0.995, 0.999,
1}}
), Scale Values( [0 1] ), Reverse Labels( 1 )}
)Spero che sia di aiuto!
Kira
Ri: definizione del gradiente di colore personalizzato nella mappa termica del generatore di grafici con JSLCiao Kira,
Grazie per l'aiuto.Questo mi ha davvero aiutato ad arrivare dove stavo cercando di andare.
Aggiungerò un po 'più di dettagli su come farlo per altri che potrebbero provare qualcosa di simile, dal momento che non sono riuscito a trovare alcun dettaglio nella documentazione di JMP.
Se fai clic con il pulsante destro del mouse sulla legenda della mappa termica, seleziona Gradiente, quindi fai clic sul tema colore e poi sul tortuoso per aprire "Tema colore personalizzato".Questa è la configurazione che ha finito per funzionare per me.

Sembra che qui ci siano solo quattro punti che definiscono il gradiente a 0, 10, 50 e 100%, ma non è vero.Se definisci solo quei quattro punti, otterrai gradienti compresi tra allora, ad es. Dal rosso all'arancio da 0-10%. Se vuoi passare dal rosso all'arancio al 10% devi definire sia un punto rosso che un punto arancione al 10%.L'interfaccia utente mostra solo un indicatore perché lo stiamo usando per qualcosa per cui non è stato progettato.
Per ottenere tre gamme di colori discrete è necessario definire sei punti, anche se sopra se ne vedono solo quattro a causa della sovrapposizione.Sebbene la visualizzazione sopra sia utile dopo il fatto , Non potrei usarlo per ottenere ciò che voglio spostando i cursori. Ho dovuto scriverlo direttamente. Questo è l'aspetto del mio codice:
{Color Theme(
{"White to Red p-Value", 2051,
/*0%->red 10%->red 10%->orange 50%->orange 50%->white 100%->white */
{{255,0,0},{255,0,0},{255,165,0},{255,165,0},{255,255,255},{255,255,255}},
{.0000 , 0.1 , 0.1 , 0.5 , 0.5 , 1 }
}Come ha sottolineato Kira, il fattore di scala è importante per avere ragione. I valori nel tema colore vanno da 0 a 1 (da 0 a 100% della scala definita).Il Fattore di scala "mappa" la scala dei colori sulla tua particolare variabile, nel mio caso da 0 a 0,1.
Posso pensare ad altri casi in cui voglio prendere dati continui e mapparli su passaggi di colore non gradienti, quindi forse c'è un modo migliore per farlo in JMP o solo un'impostazione che mi manca. (L'ho fatto anche nel modo suggerito da Kira, con la creazione di una nuova colonna - anche questa è sicuramente un'opzione ragionevole.)
Il mio output finale è simile a questo, con i rapporti F mostrati in ogni cella:

Nel file allegato è presente il set di dati originale. Il primo script esegue il modello. Il secondo entra nel rapporto, estrae i valori p e i rapporti f e crea la mappa termica.Vorrei aver capito abbastanza sulla navigazione nelle strutture ad albero dei report per rendere lo script della mappa di calore "intelligente" abbastanza da trovare la tabella "Test effetti" ovunque si trovi nel report.Così com'è ora, è hard coded, quindi lo script probabilmente funzionerà solo con questo particolare rapporto.
dt_pvals = report(fls)[outlinebox(1)][TableBox(6)] << make combined data table;
Penso che questo potrebbe essere uno strumento di visualizzazione utile quando si lavora con più fattori e risposte.
-Tom
Ri: definizione del gradiente di colore personalizzato nella mappa termica del generatore di grafici con JSLFantastico, grazie per la spiegazione dettagliata Tom!