Ho bisogno di aiuto. Si è verificato un errore durante la creazione del file HTML interattivoSto scrivendo uno script per rendere il file HTML (interattivo) aggiungendo la funzionalità di filtro dati nei grafici, ma ho riscontrato qualche errore nel seguente codice durante la funzione chiamante salva Interactive HTML()
Grazie per l'aiuto.
Il messaggio di errore è sotto l'immagine allegata.


Ecco il mio codice
Names Default To Here( 1 );
dt = Open( "C:\myJSL\BigClass.csv");
app=New Window( "Shared Local Filter Batman",
Data Filter Context Box(
H List Box(
Current Data Table() <<
Data Filter( Local ),
Platform(
Current Data Table(),
Bivariate( Y( :height ), X( :weight ) )
),
Platform(
Current Data Table(),
Distribution(
Continuous Distribution(
Column( :height ),
Horizontal Layout( 1 ),
Vertical( 0 )
)
)
)
)
)
);
box = app << Run;
Show Properties( box );
Show( box );
/*create HTML */
(box << get windows)[app] << save Interactive HTML( "C:\myJSL\myiHTML.htm" );
/* Open HTML file in Chrome */
Web( "file:///C:/myJSL/myiHTML.htm", Chrome);
Organizzazione dei contenutiEsplorazione e visualizzazione dei datiPersonalizzazione di massaCondivisione e comunicazione dei risultatiRe: Hai bisogno di aiuto. Si è verificato un errore durante la creazione del file HTML interattivoCiao John, @John_Powell_JMP Grazie mille per l'aiuto nel capire cosa sbaglio nel mio codice. Ora funziona bene! e così posso modificare il codice adatto ai miei compiti reali per il passaggio successivo.
Comunque grazie anche per i consigli su un paio di suggerimenti che dovrei seguire.

Re: Hai bisogno di aiuto. Si è verificato un errore durante la creazione del file HTML interattivoCiao @cpbatman ,
Hai aggiunto le righe Modalità e Aggiungi filtro alla funzione Casella di contesto del filtro dati anziché alla funzione Filtro dati. Hai anche aggiunto una casella di riepilogo H aggiuntiva che duplica la prima.
Ecco come dovrebbe apparire con alcune piccole modifiche al nome del file per farlo funzionare sul mio computer:
Names Default To Here(1);
/* using sample data table */
dt = Open("$SAMPLE_DATA/Big Class.jmp"); // C:\myJSL\BigClass.csv");
app = New Window("Shared Local Filter Batman",
Data Filter Context Box(
H List Box(
Current Data Table() << Data Filter(Local,
/** added code to handle data filter **/
Mode( Include( 0 ) ),
Add Filter( columns( :height ), Display( :height, N Items( 6 ) ) )
/** end of added code **/
),
Platform(Current Data Table(), Bivariate(Y(:height), X(:weight))),
Platform(
Current Data Table(),
Distribution(Continuous Distribution(Column(:height), Horizontal Layout(1), Vertical(0)))
)
)
/** removed duplicate H List Box code **
,
H List Box(
Current Data Table() << Data Filter(Local),
Platform(Current Data Table(), Bivariate(Y(:height), X(:weight))),
Platform(
Current Data Table(),
Distribution(Continuous Distribution(Column(:height), Horizontal Layout(1), Vertical(0)))
)
)
** end of removed code **/
)
);
/* exported file location changed */
app << save Interactive HTML("$DOWNLOADS\myiHTML.htm");
Web("$DOWNLOADS/myiHTML.htm", Chrome); // open with default browser
Dato che sei nuovo nello scripting JSL, ecco un paio di suggerimenti che dovrebbero aiutarti:
1. Fare clic con il pulsante destro del mouse nell'editor JSL e selezionare "Mostra numeri di riga" per trovare le righe menzionate nel registro incorporato (sotto lo script).
2. Per scoprire quali parametri puoi passare a una funzione, passa il mouse sopra il nome della funzione e un suggerimento dovrebbe mostrarli. Per ottenere maggiori informazioni sulla funzione, fare clic con il tasto destro del mouse sulla funzione e selezionare 'Help Scripting Index'.
~Giovanni
Re: Hai bisogno di aiuto. Si è verificato un errore durante la creazione del file HTML interattivoCiao John, @John_Powell_JMP grazie mille per aver previsto che lo vedrò per il prossimo numero.
Ora ho il problema che mi hai detto ahah ^^"
Ad ogni modo, ho provato ad aggiungere il codice che hai suggerito (nella zona commenti ho aggiunto il codice per gestire il filtro dati ), ma ho ricevuto qualche errore come nell'immagine allegata. Potresti gentilmente aiutarmi? Scusate per la mia interruzione, sono abbastanza nuovo per JSL.
Names Default To Here(1);
dt = Open("C:\myJSL\BigClass.csv");
app = New Window("Shared Local Filter Batman",
Data Filter Context Box(
<FONT color="#FF0000">/** aggiunto codice per gestire il filtro dati **/ Locale, Modalità( Include( 0 ) ), Aggiungi filtro( colonne( :height ), Display( :height, N Items( 6 ) ) ); /** fine del codice aggiunto **/</FONT>
H List Box(
Current Data Table() << Data Filter(Local),
Platform(Current Data Table(), Bivariate(Y(:height), X(:weight))),
Platform(
Current Data Table(),
Distribution(Continuous Distribution(Column(:height), Horizontal Layout(1), Vertical(0)))
)
),
H List Box(
Current Data Table() << Data Filter(Local),
Platform(Current Data Table(), Bivariate(Y(:height), X(:weight))),
Platform(
Current Data Table(),
Distribution(Continuous Distribution(Column(:height), Horizontal Layout(1), Vertical(0)))
)
)
)
);
app << save Interactive HTML("C:\myJSL\myiHTML.htm");
Web("file:///C:/myJSL/myiHTML.htm", Chrome); // open with default browserEcco il mio messaggio di errore.

Re: Hai bisogno di aiuto. Si è verificato un errore durante la creazione del file HTML interattivoGrazie mille @jthi
Funziona bene dopo aver fatto come hai suggerito.

Re: Hai bisogno di aiuto. Si è verificato un errore durante la creazione del file HTML interattivoCiao @cpbatman ,
Non ho potuto fare a meno di notare che il filtro dei dati locali nel tuo script non definisce una colonna da filtrare.
Ho anche notato che hai abilitato la modalità di inclusione nel filtro dati locale.
Il filtro dei dati locali non funzionerà nell'HTML interattivo a meno che non venga aggiunta una colonna filtro prima del salvataggio e la modalità di inclusione non sia disabilitata.
Ecco un codice script di filtro dati locale che disabiliterà la modalità di inclusione e filtrerà in base alla colonna dell'età:
Data Filter(Local,
Mode( Include( 0 ) ),
Add Filter( columns( :age ), Display( :age, N Items( 6 ) ) )
)
Se lo combini con la soluzione di Jarmo, il tuo filtro dovrebbe funzionare in JMP e in HTML interattivo.
Tieni presente che il comportamento con la modalità Includi disabilitata sarà diverso rispetto a quando è abilitata, poiché il filtro mostrerà/nasconderà solo le righe. Tutte le righe verranno sempre incluse. Mentre i punti nel grafico bivariato e gli outlier nel boxplot risponderanno alla modalità Mostra del filtro dati locale, l'istogramma e il boxplot non lo faranno.
Tieni presente che quando pubblichi su JMP Live o JMP Public, che utilizzano anch'essi HTML interattivo, non è necessario disattivare la modalità di inclusione.
Spero che lo troverai utile.
~Giovanni
Re: Hai bisogno di aiuto. Si è verificato un errore durante la creazione del file HTML interattivoSto usando JMP16.
Ho apportato lievi modifiche al tuo script. box non è necessaria quando Nuova finestra viene utilizzata in questo modo (non sei sicuro di quando sarebbe necessaria, applicazione/dashboard?) e puoi semplicemente salvare l'app (nuova finestra) come html interattivo.
Names Default To Here(1);
dt = Open("$SAMPLE_DATA/Big Class.jmp");
app = New Window("Shared Local Filter Batman",
Data Filter Context Box(
H List Box(
Current Data Table() << Data Filter(Local),
Platform(Current Data Table(), Bivariate(Y(:height), X(:weight))),
Platform(
Current Data Table(),
Distribution(Continuous Distribution(Column(:height), Horizontal Layout(1), Vertical(0)))
)
)
)
);
// box = app << Run;
// Show Properties(box);
// Show(box);
/*create HTML */
app << save Interactive HTML("$DOWNLOADS\myiHTML.html");
Web("$DOWNLOADS\myiHTML.html"); // open with default browser