<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />Saluti.
Sto cercando di creare un diagramma di Gantt in cui un programma può avere diversi colori di riempimento all'interno dei segmenti a seconda di qualsiasi criterio. Ho creato alcuni dati fittizi solo a scopo di discussione e ho allegato un esempio visivo. Supponiamo di avere tre progetti con esigenze di personale variabili nel tempo (tempi diversi per progetto) e vorrei che i colori di riempimento della barra rappresentassero le informazioni sul personale basso, medio o alto.
| Intestazione 1 | Tempo 1 | Personale 1 | Tempo 2 | Personale 2 | Tempo 3 | Personale 3 |
|---|
| Progetto 1 | gennaio-febbraio | Basso | Mar-Ago | Alto | settembre-dicembre | Med |
| Progetto 2 | gennaio-giugno | Med | luglio-ottobre | Basso | novembre-dicembre | Med |
| Progetto 3 | gennaio-aprile | Med | maggio-luglio | Med | luglio-dicembre | Alto |
Ho trovato e giocato con il componente aggiuntivo del diagramma di Gantt, ma non è adatto alle mie esigenze, anche se l'ho usato come punto di partenza nell'utilizzo di Graph Builder per creare qualcosa per me. L'ho fatto funzionare così posso usare le date per creare diverse barre per un particolare progetto in base al tempo. Ma in questo momento il colore di riempimento è una funzione del periodo di tempo, quindi tutto il Tempo 1 è lo stesso, tutto il Tempo 2 è lo stesso e tutto il Tempo 3 è lo stesso.
Posso utilizzare istruzioni condizionali nelle proprietà del modello di legenda per il colore di riempimento? Con 1,2,3 rispettivamente Low, Med, High e il riferimento del modello 5 collegato ai limiti del tempo 1, essenzialmente qualcosa come...
Legend Model( 5, Level Name( 0, "Time 1" ), Properties( 0, if (Staffing 1 = 1,{Fill Color( 57 )}, Staffing 1 = 2, {Fill Color( 47)}, Staffing 1 = 3, {Fill Color( 37)}, ) )Idealmente mi piacerebbe anche aggiungere indicatori per le pietre miliari, ma non so se sia fattibile. Ci sono altri strumenti che probabilmente possono farlo più facilmente, ma qualcuno ha chiesto informazioni su JMP dopo aver mostrato loro un esempio di Excel, quindi eccomi qui.
Grazie.
Grazie per il tuo aiuto Jim.
Vedrò se riesco a JSL alcune cose per farlo funzionare.
L'illustrazione che ti ho fornito mostrava come, utilizzando il Gantt Addin, la tabella dei dati finale avrebbe dovuto apparire approssimativamente per generare un grafico della complessità che desideri.Se esegui il backup, a come sarebbe la tabella iniziale, posso immaginare una tabella di dati con colonne che indicano le specifiche che desideri, e quindi il jsl per prendere quell'input e generare dietro le quinte una tabella di dati e un script di generatore di grafici per generare il tuo output.
Non credo che esista una soluzione in cui avresti una tabella di dati abbinata a uno script statico di Graph Builder per produrre i risultati desiderati.Ci vorranno alcuni jsl per interpretare il tuo input e per generare una nuova tabella di dati e uno script di Graph Builder per soddisfare le tue esigenze.
Jim,
Grazie per aver risposto. Ho già qualcosa che funziona in tal senso.
Il mio problema è un po' diverso. Quindi, usando l'esempio di Gantt, volevo variare il colore di riempimento completo in funzione di un'altra colonna. Essenzialmente ho una colonna che definisce la dimensione delle barre in funzione del tempo e un'altra che definisce il colore. Quindi il blu scuro per completo sarebbe guidato da altri dati - potrebbe essere qualcosa come i livelli di personale - dove Requisiti potrebbe essere Verde, Design potrebbe essere Giallo e Rosso per le sezioni Completo e Incompleto, ecc. Questo è il problema che sto riscontrando.
Grazie.
La semplice risposta è Sì:

Tuttavia, rende il Generatore di grafici e la tabella dati più complessi.Se si utilizza il componente aggiuntivo del diagramma di Gantt come modello di strutture, è necessario aggiungere una nuova colonna per contenere i nuovi dati finali per ogni diverso tipo di motivo di riempimento desiderato.E quindi il grafico di Graph Builder dovrebbe essere modificato per aggiungere una nuova barra con l'intervallo impostato per la colonna iniziale corretta alla nuova colonna nella tabella dati che è stata creata per la nuova categoria.Di seguito è riportato il codice per il generatore di grafici con un solo nuovo tipo di modello di riempimento.Ho cambiato il motivo di riempimento, ma avrebbe potuto essere altrettanto facilmente un motivo solido con solo un colore diverso.
Graph Builder(
Size( 907, 626 ),
Show Control Panel( 0 ),
Variables(
X( :Start Date ),
X( :donedate, Position( 1 ) ),
X( :End Date, Position( 1 ) ),
X( :Extended Date, Position( 1 ) ),
Y( :Task, Order By( :Start Date, Descending, Order Statistic( "Mean" ) ) )
),
Elements(
Bar( X( 1 ), X( 3 ), Y, Legend( 32 ), Bar Style( "Range" ) ),
Bar( X( 1 ), X( 2 ), Y, Legend( 20 ), Bar Style( "Range" ) ),
Bar( X( 1 ), X( 4 ), Y, Legend( 44 ), Bar Style( "Range" ) )
),
SendToReport(
Dispatch(
{},
"Start Date",
ScaleBox,
{Min( 3442521600 ), Max( 3487017600 ), Interval( "Month" ), Inc( 1 ),
Minor Ticks( 0 ), Label Row( Label Orientation( "Angled" ) )}
),
Dispatch(
{},
"Task",
ScaleBox,
{Label Row(
{Show Major Ticks( 0 ), Set Font( "Tahoma" ), Set Font Size( 11 )}
)}
),
Dispatch(
{},
"400",
ScaleBox,
{Legend Model(
32,
Level Name( 0, "Incomplete" ),
Properties( 0, {Fill Color( 77 )} )
), Legend Model(
20,
Level Name( 0, "Complete" ),
Properties( 0, {Fill Color( 53 )} )
), Legend Model(
44,
Properties( 0, {Fill Color( 74 ), Fill Pattern( "hatch heavy" )} )
)}
),
Dispatch( {}, "graph title", TextEditBox, {Set Text( "Gantt Chart" )} ),
Dispatch( {}, "X title", TextEditBox, {Set Text( "Date" )} ),
Dispatch( {}, "Y title", TextEditBox, {Set Text( "Tasks" )} )
)
);
E questa è la tabella dei dati con la modifica che ho dovuto apportare per consentire la nuova categoria di barre.Notare la nuova colonna denominata Data estesa.Nel modello che sto proponendo, dovrebbero essere aggiunte colonne aggiuntive come Extended Date.
