Come utilizzare JSL per colorare le celle locali in base al valore?Ad esempio, nella colonna "peso" di "Big class.jMP ", prendi i dati nelle righe 1-10 e imposta il colore del gradiente in base all'altezza dei dati, come nel Immagine .Quindi puoi avviare e interrompere qualsiasi colore desideri.

Personalizzazione di massaRi: Come utilizzare JSL per colorare le celle locali in base al valore?Usa questo stupido metodo per selezionare il numero di colore che desidero.

Ri: Come utilizzare JSL per colorare le celle locali in base al valore?Grazie Jim!
È difficile ottenere un numero di colore come questo direttamente dal colore della cella:
"-2768895, -5530606, -6582759, -8094941, -9147350, -10462158, -11514567, -12237762,
-13344414, -14575206"Ri: Come utilizzare JSL per colorare le celle locali in base al valore?In allegato è presente una tabella dati con la colonna formula aggiunta, recuperando i colori delle celle dalla colonna Altezza.I colori sono stati impostati facendo clic con il tasto destro su ciascuna cella e selezionando Colore cella.La formula non potrà recuperare i colori impostati con Colore o Segna per colonna, Colori valore o Colore sfumatura

Ri: Come utilizzare JSL per colorare le celle locali in base al valore?Grazie Jim!
Ri: Come utilizzare JSL per colorare le celle locali in base al valore?Ottima funzione, Jim! Grazie per la condivisione.
Questo è un buon posto per promuovere la tua idea della lista dei desideri JMP: << ottieni il colore della cella
per averlo integrato in JMP, in modo che chiunque si imbattesse in questa discussione potesse votarla.
Grazie,
~Giovanni
Ri: Come utilizzare JSL per colorare le celle locali in base al valore?Ecco una formula che funziona se le celle sono state colorate utilizzando Color Cells().Ma la colorazione delle celle che è stata impostata da Value Colors, o Color e Mark by Column()..Quindi non è una formula molto adeguata
// Define formula to retrieve cell colors
If( Row() == 1,
get_cell_color = Function( {col, r},
s = col << get script;
//Locate argument "Color Cells" in column script
For( i = 1, i <= N Arg( s ), i++,
If( Head Name( Arg( s, i ) ) == "Color Cells",
p = i;
Break();
);
);
//Identify the sublist that contains the color of row r
if( p==i,
L = Arg( Arg( s, p ), 1 );
For( i = 1, N Items( L ), i++,
If( N Row( Loc( L[i][2], r ) ) == 1,
color = L[i][1];
Break();
)
);
color,
color=.
)
)
);
cellcolor = get_cell_color( Column( :Height ), Row() );Ri: Come utilizzare JSL per colorare le celle locali in base al valore?Grazie Jim!
Ho il codice per provare quel post. Ma non ci arriverò comunque.

Ri: Come utilizzare JSL per colorare le celle locali in base al valore?Hai letto la voce che ho pubblicato nella mia risposta precedente su come recuperare i colori delle celle?Ha una funzione che può fornirti come accedere ai colori delle celle.Se i colori sono stati impostati utilizzando "Colore o Contrassegna per colonna", l'unico modo che conosco per ottenere i colori è creare una colonna rowstate, copiare gli attuali rowstate nella nuova colonna e quindi utilizzare Color Of ( Row State( row#)) per recuperare il valore del colore.
Ri: Come utilizzare JSL per colorare le celle locali in base al valore?Grazie Jim!
Non ho ancora imparato a scrivere "Funzioni".
Voglio ottenere un numero di colore come questo:

Ri: Come utilizzare JSL per colorare le celle locali in base al valore?Puoi facilmente creare un modello simile in JSL.Ma in JSL crei funzioni.

Ri: Come utilizzare JSL per colorare le celle locali in base al valore?Ri: Come utilizzare JSL per colorare le celle locali in base al valore?Grazie Jim!
Mi avete dato molto aiuto e avete fatto rapidi progressi.
Usavo VBA e potevo registrare la maggior parte del codice per ogni passaggio.
Ora, utilizzando JSL, desideriamo anche ottenere un funzionamento completamente automatico.Ri: Come utilizzare JSL per colorare le celle locali in base al valore?Qualche anno fa ho posto la stessa domanda,
Ecco qui:
Fondamentalmente devi estrarlo dallo script estratto per la colonna che ti interessa
Ri: Come utilizzare JSL per colorare le celle locali in base al valore?Ma farlo manualmente per mostrarlo?
Inoltre, è possibile utilizzare JSL per ottenere automaticamente il numero di colore di ciascuna cella di riga nella colonna di "altezza"?

Ri: Come utilizzare JSL per colorare le celle locali in base al valore?Grazie pmroz!
L'ho fatto.
Ri: Come utilizzare JSL per colorare le celle locali in base al valore?Quali versioni del sistema operativo e di JMP stai utilizzando?Utilizzo JMP 14 su Windows 10, 64 bit.
Prova questi passaggi:
- Apri la grande lezione
- Fare clic con il tasto destro su altezza > Proprietà colonna > Sfumatura colore

- Seleziona "Cella colore per valore", quindi OK

- Dovresti ritrovarti con questo:

Se il problema persiste, dovrai contattare l'helpdesk JMP.
Ri: Come utilizzare JSL per colorare le celle locali in base al valore?Ri: Come utilizzare JSL per colorare le celle locali in base al valore?Grazie pmroz!
Strano, ancora non vedo 1-10 linee di colore qui. Le linee da 11 a 40 sono bianche.

Ri: Come utilizzare JSL per colorare le celle locali in base al valore?Ecco come mostrare solo la sfumatura di colore per le righe 1-10. Tieni presente che il minimo, il massimo e la media vengono calcolati sull'intera colonna.Puoi modificarlo.
dt = open("$sample_data\Big Class.jmp");
bmin = col min(dt:height);
bmax = col max(dt:height);
bavg = col mean(dt:height);
dt:height << set property("Color Gradient", {"Light Spectral", Range( {bmin, bmax, bavg} )});
dt:height << Color Cell by Value(1);
reset_rows = 11::40;
dt:height << color cells ("White", reset_rows);

Ri: Come utilizzare JSL per colorare le celle locali in base al valore?Dovresti vedere questo:

Ri: Come utilizzare JSL per colorare le celle locali in base al valore?Grazie pmroz!
Il tuo codice è completo? Non ho visto alcun risultato quando l'ho eseguito e non sapevo come perfezionare il codice. Grazie per il tuo aiuto!Ri: Come utilizzare JSL per colorare le celle locali in base al valore?Puoi anche provare la sfumatura di colore.
dt = open("$sample_data\Big Class.jmp");
bmin = col min(dt:height);
bmax = col max(dt:height);
bavg = col mean(dt:height);
dt:height << set property("Color Gradient", {"Light Spectral", Range( {bmin, bmax, bavg} )});
dt:height << Color Cell by Value(1);
Questo colorerà l'intera colonna.Puoi utilizzare le celle di colore per le righe dalla 11 alla fine per rimuovere il colore.
Ri: Come utilizzare JSL per colorare le celle locali in base al valore?Cerca nella Guida allo scripting….non solo nell'indice dello scriptingRi: Come utilizzare JSL per colorare le celle locali in base al valore?Grazie Jim!
Ho cercato nell'indice e ho visto solo questo.
Dove posso vedere un codice colore più completo?

Ri: Come utilizzare JSL per colorare le celle locali in base al valore?
Ecco uno script che colorerà le prime 10 righe del peso della colonna nella tabella dati.
names default to here(1);
dt=Open("$SAMPLE_DATA/big class.jmp");
// Set the gradient list of colors
colorList = {-2768895, -5530606, -6582759, -8094941, -9147350, -10462158, -11514567, -12237762,
-13344414, -14575206};
// Color first 10 rows
// find the range
weightMin= col min(if(Row()<=10,:weight,.));
weightMax= col max(if(Row()<=10,:weight,.));
weightInc= (weightMax-weightmin)/10;
// Loop across and set the colors
For(i=1,i<=10,i++,
Bin=floor((:weight[i]-weightMin)/weightInc)+1;
if(Bin>10,Bin=10);
:weight << color cells( colorList[bin],i)
);
Per comprendere tutti i concetti alla base dei colori in JMP, è necessario leggere la documentazione nella Guida allo scripting sulla specifica dei colori
Ri: Come utilizzare JSL per colorare le celle locali in base al valore?"Scale di colori" non trovate nell'indice dello script.