Effacer les filtres
Effacer les filtres

Plotting a Gantt Chart from a Matrix

8 vues (au cours des 30 derniers jours)
Alaa Al-Saffar
Alaa Al-Saffar le 8 Déc 2017
Modifié(e) : KSSV le 1 Août 2024 à 11:58
Hello,
I plotted this gantt chart in excel using this table.
The Gantt Chart looked like this
To remove the gaps durations, I used the legend to de-colored them, remove the boarders and remove them.
Now, I would like to plot the same gantt chart in Matlab using the following command:
barh(Positions,Gap_Duration,'stacked');
where:
Positions=[1,2,3,4];
Gap_Duration=[0,2,5,3,5,3;
3,5,3,5,3,4;
9,3,0,0,12,2;
13,2,2,2,8,3];
However, I want to change the color for every job duration (every even column at the Gap_Duration Matrix) and No-Color & No-Boarder for every gap duration (every odd column at the Gap_Duration Matrix).
Note: this only a simple example, I am dealing with a Gap_Duration Matrix with a size of (60,55*2),
60 positions and 55 jobs with their 55 gaps. where each job should have its own color or at least every 8-10 jobs have different color.
I already did the code for obtaining the Gap_Duration Matrix.
Thanks in advance.

Réponses (2)

Jos (10584)
Jos (10584) le 8 Déc 2017
Modifié(e) : KSSV le 1 Août 2024 à 11:58
Use graphic handles to manipulate the graph:
Positions=[1,2,3,4];
Gap_Duration=[0,2,5,3,5,3;
3,5,3,5,3,4;
9,3,0,0,12,2;
13,2,2,2,8,3];
H = barh(Positions,Gap_Duration,'stacked') ;
set(H([1 3 5]),'Visible','off')
  2 commentaires
Md. Kawsar Ahmed Asif
Md. Kawsar Ahmed Asif le 13 Mai 2018
Hello Jos,
I don't understand the following command. Could you explain me?
" set(H([1 3 5]),'Visible','off') "
Thanks In Advance ... :)
Jos (10584)
Jos (10584) le 14 Mai 2018
Whenever Matlab plots something it creates a handle to the plotted object. You can manipulate these objects by setting its properties using the handles. In the example above, H is a array of handles to bar elements (see the documentation of barh). The command sets the property "visible" to off for three of them.

Connectez-vous pour commenter.


Alexis Wang
Alexis Wang le 30 Août 2022
If it helps, I just published a custom Gantt chart for anyone to use and download on File Exchange here: https://www.mathworks.com/matlabcentral/fileexchange/116970-gantt-chart?s_tid=srchtitle. If you have any questions or feedback, feel free to let me know!

Catégories

En savoir plus sur Line Plots dans Help Center et File Exchange

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by