matlab画甘特图
时间: 2023-08-23 19:10:23 浏览: 203
在Matlab中,可以使用patch函数来画甘特图。首先,需要定义每个工件的开始时间和结束时间,以及每个工件对应的机器和颜色。然后,使用循环来创建每个工件的矩形,并设置其颜色。最后,设置横纵坐标的范围和标签,以及图表的样式。
以下是一个示例代码:
```matlab
a=\[0 0 0 5; 1 0 5 49; 2 0 49 145; 0 1 5 22; 1 1 49 135; 2 1 145 177; 0 2 22 94; 1 2 135 189; 2 2 189 225; \]; % 定义工件的开始时间和结束时间
color=\[192,90,42; 66,212,203; 130,150,80; \]; % 定义颜色数组
figure(1);clf; % 创建图表
w=0.6; % 横条宽度
set(gcf,'color','w'); % 设置背景颜色
for ii=1:size(a,1)
x=a(ii,\[3 3 4 4\]);
y=a(ii,1)+\[-w/2 w/2 w/2 -w/2\]+0.9;
p=patch('xdata',x,'ydata',y,'facecolor',\[color(a(ii,2)+1,1)/255,color(a(ii,2)+1,2)/255,color(a(ii,2)+1,3)/255\],'edgecolor','k');
text(a(ii,3)+1,a(ii,1)+0.9,num2str(a(ii,2)),'FontSize',13);
end
xlabel({'Makespan'},'FontSize',14,'FontWeight','bold');
ylabel({'Machine'},'FontSize',14,'FontWeight','bold');
axis(\[0 250 0 4\]); % 设置横纵坐标范围
set(gca,'FontSize',12) % 设置横纵坐标大小
set(gca,'Box','on'); % 设置右上边框
set(gca,'YTick',0:4);
set(gca,'YTickLabel',{'';num2str((1:3)','M%d');''});
```
这段代码会生成一个甘特图,横轴表示作业的完成时间,纵轴表示机器。每个工件用一个矩形表示,矩形的颜色表示不同的工件。
#### 引用[.reference_title]
- *1* [MATLAB画甘特图](https://blog.csdn.net/root_zhb/article/details/114155938)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v91^insert_down1,239^v3^insert_chatgpt"}} ] [.reference_item]
- *2* [matlab画甘特图(用任意多颜色表示任意多工件)](https://blog.csdn.net/dfb198998/article/details/49785279)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v91^insert_down1,239^v3^insert_chatgpt"}} ] [.reference_item]
- *3* [MATLAB | 如何使用MATLAB绘制甘特图(gantt chart)](https://blog.csdn.net/slandarer/article/details/127469719)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v91^insert_down1,239^v3^insert_chatgpt"}} ] [.reference_item]
[ .reference_list ]
阅读全文