CIAO,
Sono un utente JMP17.
Ho un grafico con l'asse x che rappresenta una marca temporale.
Voglio creare uno strumento esterno che sarà un lettore video e voglio che tale strumento continui a inviare al grafico jmp il timestamp corrente, che verrà rappresentato come una linea di riferimento sull'asse x che continuerà a muoversi in base all'ora corrente sul lettore video.
Per testarlo ho creato un'app fittizia in cpp che continua a inviare timestamp casuali allo stdoutput, l'ho compilata come exe e l'ho eseguita tramite lo script jsl, ho analizzato il testo e lo ho mostrato sul grafico.
Mi chiedevo se esiste un'opzione migliore per trasmettere i dati in streaming su JMP e continuare ad aggiornare il grafico.
Se il lettore video sarà un'app Python, sarà più facile integrarlo con JMP?
Distinti saluti,
Corso
Potresti anche prendere spunto dal blog Uncharted di @Craige_Hales , come questo New Project Data Points
Esistono almeno tre modi per trasmettere dati in JMP e aggiornare una tabella dati con i nuovi valori; molte piattaforme possono aggiornare automaticamente i propri grafici quando la tabella viene aggiornata.
- Puoi usare un socket JSL. Questo è un approccio di basso livello per connessioni non SSL. Ma una volta aperto un socket, puoi leggerlo in un ciclo mentre il tuo processo esterno produce dati in un socket. Questo ha la curva di apprendimento più lunga.
- Puoi usare RunProgram e leggere lo stream stdout dal tuo processo esterno e analizzare lo stdout nei record della tabella dati. Questo è modestamente complicato e ci sono diversi esempi nella comunità.
- Puoi usare DataFeed. Vedi Arduino . È piuttosto vecchio e non molto usato, ma se funziona per te potrebbe essere facile.
Tutte queste idee sono più o meno le stesse per quanto riguarda l'analisi sintattica; impacchetti i dati in modo che JMP possa analizzarli da un flusso infinito di caratteri. RunProgram è il mio preferito; l'ho usato con PuTTY per ottenere stdout da programmi su computer remoti ( Can JSL talk to Linux? , JSL to Control Raspberry Camera ).