{ "cells": [ { "cell_type": "code", "execution_count": 29, "id": "9ef2d7f6", "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "Dataset 1 (Task Schedule) Summary:\n", "Number of tasks: 70\n", "Time range: 0.00 - 375.00\n", "Total duration: 375.00\n", "Average task duration: 7.23\n", "\n", "Dataset 2 (Simulation Results) Summary:\n", "Number of tasks: 71\n", "Time range: 101981.00 - 102202.00\n", "Total duration: 221.00\n", "Average task duration: 4.46\n", "\n", "First 5 tasks from Dataset 1:\n", " Task Start End Duration Start_Normalized End_Normalized\n", "0 Task 0 0.0 1.0 1.0 0.0 1.0\n", "1 Task 1 1.0 5.0 4.0 1.0 5.0\n", "2 Task 2 5.0 12.0 7.0 5.0 12.0\n", "3 Task 3 12.0 102.0 90.0 12.0 102.0\n", "4 Task 4 97.0 102.0 5.0 97.0 102.0\n", "\n", "First 5 tasks from Dataset 2:\n", " Task Start End Duration Start_Normalized End_Normalized\n", "0 Task 70 101981 101981 0 0 0\n", "1 Task 0 101981 101982 1 0 1\n", "2 Task 1 101982 101986 4 1 5\n", "3 Task 2 101986 101993 7 5 12\n", "4 Task 4 101993 101998 5 12 17\n" ] } ], "source": [ "import json\n", "import pandas as pd\n", "import numpy as np\n", "import matplotlib.pyplot as plt\n", "import plotly.graph_objects as go\n", "from plotly.subplots import make_subplots\n", "import plotly.express as px\n", "from datetime import datetime, timedelta\n", "\n", "# Load the data from both files\n", "def load_and_normalize_data():\n", " # Load first dataset (task_schedule.json)\n", " with open('/home/sfischer/Documents/projects/wk_LinProg/LinProg_Scripts/gantt_output/task_schedule.json', 'r') as f:\n", " data1 = json.load(f)\n", " \n", " # Load second dataset (simulation results)\n", " with open('/home/sfischer/Documents/projects/wk_LinProg/simulation/results/log_raw/gantt_timing_combined_log_LinProg_opt_test_rep50_link576_Opt_NoC_1_Comp_0.1_scratch10000_comp1.json', 'r') as f:\n", " data2 = json.load(f)\n", " \n", " # Convert first dataset to DataFrame\n", " df1 = pd.DataFrame(data1)\n", " df1['Source'] = 'Task Schedule'\n", " df1['Task_ID'] = df1['Task'].str.extract(r'(\\d+)').astype(int)\n", " \n", " # Convert second dataset to DataFrame\n", " df2 = pd.DataFrame(data2['tasks'])\n", " df2['Source'] = 'Simulation Results'\n", " df2['Task_ID'] = df2['task_id']\n", " df2['Task'] = 'Task ' + df2['task_id'].astype(str)\n", " df2['Start'] = df2['start_time']\n", " df2['End'] = df2['end_time']\n", " df2['Duration'] = df2['duration']\n", " \n", " # Normalize timing values to start from 0\n", " df1['Start_Normalized'] = df1['Start'] - df1['Start'].min()\n", " df1['End_Normalized'] = df1['End'] - df1['Start'].min()\n", " df1['Duration_Normalized'] = df1['Duration']\n", " \n", " df2['Start_Normalized'] = df2['Start'] - df2['Start'].min()\n", " df2['End_Normalized'] = df2['End'] - df2['Start'].min()\n", " df2['Duration_Normalized'] = df2['Duration']\n", " \n", " # Scale to same time range for comparison\n", " max_time_1 = df1['End_Normalized'].max()\n", " max_time_2 = df2['End_Normalized'].max()\n", " \n", " # Option 1: Scale both to 0-1 range\n", " df1['Start_Scaled'] = df1['Start_Normalized'] / max_time_1\n", " df1['End_Scaled'] = df1['End_Normalized'] / max_time_1\n", " df1['Duration_Scaled'] = df1['Duration_Normalized'] / max_time_1\n", " \n", " df2['Start_Scaled'] = df2['Start_Normalized'] / max_time_2\n", " df2['End_Scaled'] = df2['End_Normalized'] / max_time_2\n", " df2['Duration_Scaled'] = df2['Duration_Normalized'] / max_time_2\n", " \n", " return df1, df2\n", "\n", "# Load the data\n", "df1, df2 = load_and_normalize_data()\n", "\n", "print(\"Dataset 1 (Task Schedule) Summary:\")\n", "print(f\"Number of tasks: {len(df1)}\")\n", "print(f\"Time range: {df1['Start'].min():.2f} - {df1['End'].max():.2f}\")\n", "print(f\"Total duration: {df1['End'].max() - df1['Start'].min():.2f}\")\n", "print(f\"Average task duration: {df1['Duration'].mean():.2f}\")\n", "\n", "print(\"\\nDataset 2 (Simulation Results) Summary:\")\n", "print(f\"Number of tasks: {len(df2)}\")\n", "print(f\"Time range: {df2['Start'].min():.2f} - {df2['End'].max():.2f}\")\n", "print(f\"Total duration: {df2['End'].max() - df2['Start'].min():.2f}\")\n", "print(f\"Average task duration: {df2['Duration'].mean():.2f}\")\n", "\n", "# Display first few rows of each dataset\n", "print(\"\\nFirst 5 tasks from Dataset 1:\")\n", "print(df1[['Task', 'Start', 'End', 'Duration', 'Start_Normalized', 'End_Normalized']].head())\n", "\n", "print(\"\\nFirst 5 tasks from Dataset 2:\")\n", "print(df2[['Task', 'Start', 'End', 'Duration', 'Start_Normalized', 'End_Normalized']].head())" ] }, { "cell_type": "code", "execution_count": 30, "id": "ad589f8f", "metadata": {}, "outputs": [ { "data": { "application/vnd.plotly.v1+json": { "config": { "plotlyServerURL": "https://plot.ly" }, "data": [ { "fill": "toself", "fillcolor": "rgb(141,211,199)", "hovertemplate": "Task 0
Start: 0.0
End: 1.0
Duration: 1.0
", "line": { "color": "black", "width": 1 }, "name": "Task 0", "showlegend": false, "text": "Duration: 1.0", "type": "scatter", "x": [ 0, 1, 1, 0, 0 ], "xaxis": "x", "y": [ -0.4, -0.4, 0.4, 0.4, -0.4 ], "yaxis": "y" }, { "fill": "toself", "fillcolor": "rgb(255,255,179)", "hovertemplate": "Task 1
Start: 1.0
End: 5.0
Duration: 4.0
", "line": { "color": "black", "width": 1 }, "name": "Task 1", "showlegend": false, "text": "Duration: 4.0", "type": "scatter", "x": [ 1, 5, 5, 1, 1 ], "xaxis": "x", "y": [ 0.6, 0.6, 1.4, 1.4, 0.6 ], "yaxis": "y" }, { "fill": "toself", "fillcolor": "rgb(190,186,218)", "hovertemplate": "Task 2
Start: 5.0
End: 12.0
Duration: 7.0
", "line": { "color": "black", "width": 1 }, "name": "Task 2", "showlegend": false, "text": "Duration: 7.0", "type": "scatter", "x": [ 5, 12, 12, 5, 5 ], "xaxis": "x", "y": [ 1.6, 1.6, 2.4, 2.4, 1.6 ], "yaxis": "y" }, { "fill": "toself", "fillcolor": "rgb(251,128,114)", "hovertemplate": "Task 3
Start: 12.0
End: 102.0
Duration: 90.0
", "line": { "color": "black", "width": 1 }, "name": "Task 3", "showlegend": false, "text": "Duration: 90.0", "type": "scatter", "x": [ 12, 102, 102, 12, 12 ], "xaxis": "x", "y": [ 2.6, 2.6, 3.4, 3.4, 2.6 ], "yaxis": "y" }, { "fill": "toself", "fillcolor": "rgb(128,177,211)", "hovertemplate": "Task 4
Start: 97.0
End: 102.0
Duration: 5.0
", "line": { "color": "black", "width": 1 }, "name": "Task 4", "showlegend": false, "text": "Duration: 5.0", "type": "scatter", "x": [ 97, 102, 102, 97, 97 ], "xaxis": "x", "y": [ 3.6, 3.6, 4.4, 4.4, 3.6 ], "yaxis": "y" }, { "fill": "toself", "fillcolor": "rgb(253,180,98)", "hovertemplate": "Task 5
Start: 102.0
End: 102.0
Duration: 0.0
", "line": { "color": "black", "width": 1 }, "name": "Task 5", "showlegend": false, "text": "Duration: 0.0", "type": "scatter", "x": [ 102, 102, 102, 102, 102 ], "xaxis": "x", "y": [ 4.6, 4.6, 5.4, 5.4, 4.6 ], "yaxis": "y" }, { "fill": "toself", "fillcolor": "rgb(179,222,105)", "hovertemplate": "Task 6
Start: 102.0
End: 192.0
Duration: 90.0
", "line": { "color": "black", "width": 1 }, "name": "Task 6", "showlegend": false, "text": "Duration: 90.0", "type": "scatter", "x": [ 102, 192, 192, 102, 102 ], "xaxis": "x", "y": [ 5.6, 5.6, 6.4, 6.4, 5.6 ], "yaxis": "y" }, { "fill": "toself", "fillcolor": "rgb(252,205,229)", "hovertemplate": "Task 7
Start: 203.0
End: 208.0
Duration: 5.0
", "line": { "color": "black", "width": 1 }, "name": "Task 7", "showlegend": false, "text": "Duration: 5.0", "type": "scatter", "x": [ 203, 208, 208, 203, 203 ], "xaxis": "x", "y": [ 6.6, 6.6, 7.4, 7.4, 6.6 ], "yaxis": "y" }, { "fill": "toself", "fillcolor": "rgb(217,217,217)", "hovertemplate": "Task 8
Start: 102.0
End: 103.0
Duration: 1.0
", "line": { "color": "black", "width": 1 }, "name": "Task 8", "showlegend": false, "text": "Duration: 1.0", "type": "scatter", "x": [ 102, 103, 103, 102, 102 ], "xaxis": "x", "y": [ 7.6, 7.6, 8.4, 8.4, 7.6 ], "yaxis": "y" }, { "fill": "toself", "fillcolor": "rgb(188,128,189)", "hovertemplate": "Task 9
Start: 103.0
End: 106.0
Duration: 3.0
", "line": { "color": "black", "width": 1 }, "name": "Task 9", "showlegend": false, "text": "Duration: 3.0", "type": "scatter", "x": [ 103, 106, 106, 103, 103 ], "xaxis": "x", "y": [ 8.6, 8.6, 9.4, 9.4, 8.6 ], "yaxis": "y" }, { "fill": "toself", "fillcolor": "rgb(204,235,197)", "hovertemplate": "Task 10
Start: 106.0
End: 198.0
Duration: 92.0
", "line": { "color": "black", "width": 1 }, "name": "Task 10", "showlegend": false, "text": "Duration: 92.0", "type": "scatter", "x": [ 106, 198, 198, 106, 106 ], "xaxis": "x", "y": [ 9.6, 9.6, 10.4, 10.4, 9.6 ], "yaxis": "y" }, { "fill": "toself", "fillcolor": "rgb(255,237,111)", "hovertemplate": "Task 11
Start: 198.0
End: 203.0
Duration: 5.0
", "line": { "color": "black", "width": 1 }, "name": "Task 11", "showlegend": false, "text": "Duration: 5.0", "type": "scatter", "x": [ 198, 203, 203, 198, 198 ], "xaxis": "x", "y": [ 10.6, 10.6, 11.4, 11.4, 10.6 ], "yaxis": "y" }, { "fill": "toself", "fillcolor": "rgb(141,211,199)", "hovertemplate": "Task 12
Start: 208.0
End: 208.0
Duration: 0.0
", "line": { "color": "black", "width": 1 }, "name": "Task 12", "showlegend": false, "text": "Duration: 0.0", "type": "scatter", "x": [ 208, 208, 208, 208, 208 ], "xaxis": "x", "y": [ 11.6, 11.6, 12.4, 12.4, 11.6 ], "yaxis": "y" }, { "fill": "toself", "fillcolor": "rgb(255,255,179)", "hovertemplate": "Task 13
Start: 209.0
End: 216.0
Duration: 7.0
", "line": { "color": "black", "width": 1 }, "name": "Task 13", "showlegend": false, "text": "Duration: 7.0", "type": "scatter", "x": [ 209, 216, 216, 209, 209 ], "xaxis": "x", "y": [ 12.6, 12.6, 13.4, 13.4, 12.6 ], "yaxis": "y" }, { "fill": "toself", "fillcolor": "rgb(190,186,218)", "hovertemplate": "Task 14
Start: 208.0
End: 209.0
Duration: 1.0
", "line": { "color": "black", "width": 1 }, "name": "Task 14", "showlegend": false, "text": "Duration: 1.0", "type": "scatter", "x": [ 208, 209, 209, 208, 208 ], "xaxis": "x", "y": [ 13.6, 13.6, 14.4, 14.4, 13.6 ], "yaxis": "y" }, { "fill": "toself", "fillcolor": "rgb(251,128,114)", "hovertemplate": "Task 15
Start: 216.0
End: 216.0
Duration: 0.0
", "line": { "color": "black", "width": 1 }, "name": "Task 15", "showlegend": false, "text": "Duration: 0.0", "type": "scatter", "x": [ 216, 216, 216, 216, 216 ], "xaxis": "x", "y": [ 14.6, 14.6, 15.4, 15.4, 14.6 ], "yaxis": "y" }, { "fill": "toself", "fillcolor": "rgb(128,177,211)", "hovertemplate": "Task 16
Start: 216.0
End: 249.0
Duration: 33.0
", "line": { "color": "black", "width": 1 }, "name": "Task 16", "showlegend": false, "text": "Duration: 33.0", "type": "scatter", "x": [ 216, 249, 249, 216, 216 ], "xaxis": "x", "y": [ 15.6, 15.6, 16.4, 16.4, 15.6 ], "yaxis": "y" }, { "fill": "toself", "fillcolor": "rgb(253,180,98)", "hovertemplate": "Task 17
Start: 246.0
End: 247.0
Duration: 1.0
", "line": { "color": "black", "width": 1 }, "name": "Task 17", "showlegend": false, "text": "Duration: 1.0", "type": "scatter", "x": [ 246, 247, 247, 246, 246 ], "xaxis": "x", "y": [ 16.6, 16.6, 17.4, 17.4, 16.6 ], "yaxis": "y" }, { "fill": "toself", "fillcolor": "rgb(179,222,105)", "hovertemplate": "Task 18
Start: 247.0
End: 249.0
Duration: 2.0
", "line": { "color": "black", "width": 1 }, "name": "Task 18", "showlegend": false, "text": "Duration: 2.0", "type": "scatter", "x": [ 247, 249, 249, 247, 247 ], "xaxis": "x", "y": [ 17.6, 17.6, 18.4, 18.4, 17.6 ], "yaxis": "y" }, { "fill": "toself", "fillcolor": "rgb(252,205,229)", "hovertemplate": "Task 19
Start: 241.0
End: 242.0
Duration: 1.0
", "line": { "color": "black", "width": 1 }, "name": "Task 19", "showlegend": false, "text": "Duration: 1.0", "type": "scatter", "x": [ 241, 242, 242, 241, 241 ], "xaxis": "x", "y": [ 18.6, 18.6, 19.4, 19.4, 18.6 ], "yaxis": "y" }, { "fill": "toself", "fillcolor": "rgb(217,217,217)", "hovertemplate": "Task 20
Start: 242.0
End: 244.0
Duration: 2.0
", "line": { "color": "black", "width": 1 }, "name": "Task 20", "showlegend": false, "text": "Duration: 2.0", "type": "scatter", "x": [ 242, 244, 244, 242, 242 ], "xaxis": "x", "y": [ 19.6, 19.6, 20.4, 20.4, 19.6 ], "yaxis": "y" }, { "fill": "toself", "fillcolor": "rgb(188,128,189)", "hovertemplate": "Task 21
Start: 244.0
End: 246.0
Duration: 2.0
", "line": { "color": "black", "width": 1 }, "name": "Task 21", "showlegend": false, "text": "Duration: 2.0", "type": "scatter", "x": [ 244, 246, 246, 244, 244 ], "xaxis": "x", "y": [ 20.6, 20.6, 21.4, 21.4, 20.6 ], "yaxis": "y" }, { "fill": "toself", "fillcolor": "rgb(204,235,197)", "hovertemplate": "Task 22
Start: 239.0
End: 240.0
Duration: 1.0
", "line": { "color": "black", "width": 1 }, "name": "Task 22", "showlegend": false, "text": "Duration: 1.0", "type": "scatter", "x": [ 239, 240, 240, 239, 239 ], "xaxis": "x", "y": [ 21.6, 21.6, 22.4, 22.4, 21.6 ], "yaxis": "y" }, { "fill": "toself", "fillcolor": "rgb(255,237,111)", "hovertemplate": "Task 23
Start: 240.0
End: 241.0
Duration: 1.0
", "line": { "color": "black", "width": 1 }, "name": "Task 23", "showlegend": false, "text": "Duration: 1.0", "type": "scatter", "x": [ 240, 241, 241, 240, 240 ], "xaxis": "x", "y": [ 22.6, 22.6, 23.4, 23.4, 22.6 ], "yaxis": "y" }, { "fill": "toself", "fillcolor": "rgb(141,211,199)", "hovertemplate": "Task 24
Start: 249.0
End: 249.0
Duration: 0.0
", "line": { "color": "black", "width": 1 }, "name": "Task 24", "showlegend": false, "text": "Duration: 0.0", "type": "scatter", "x": [ 249, 249, 249, 249, 249 ], "xaxis": "x", "y": [ 23.6, 23.6, 24.4, 24.4, 23.6 ], "yaxis": "y" }, { "fill": "toself", "fillcolor": "rgb(255,255,179)", "hovertemplate": "Task 25
Start: 259.0
End: 260.0
Duration: 1.0
", "line": { "color": "black", "width": 1 }, "name": "Task 25", "showlegend": false, "text": "Duration: 1.0", "type": "scatter", "x": [ 259, 260, 260, 259, 259 ], "xaxis": "x", "y": [ 24.6, 24.6, 25.4, 25.4, 24.6 ], "yaxis": "y" }, { "fill": "toself", "fillcolor": "rgb(190,186,218)", "hovertemplate": "Task 26
Start: 256.0
End: 257.0
Duration: 1.0
", "line": { "color": "black", "width": 1 }, "name": "Task 26", "showlegend": false, "text": "Duration: 1.0", "type": "scatter", "x": [ 256, 257, 257, 256, 256 ], "xaxis": "x", "y": [ 25.6, 25.6, 26.4, 26.4, 25.6 ], "yaxis": "y" }, { "fill": "toself", "fillcolor": "rgb(251,128,114)", "hovertemplate": "Task 27
Start: 257.0
End: 259.0
Duration: 2.0
", "line": { "color": "black", "width": 1 }, "name": "Task 27", "showlegend": false, "text": "Duration: 2.0", "type": "scatter", "x": [ 257, 259, 259, 257, 257 ], "xaxis": "x", "y": [ 26.6, 26.6, 27.4, 27.4, 26.6 ], "yaxis": "y" }, { "fill": "toself", "fillcolor": "rgb(128,177,211)", "hovertemplate": "Task 28
Start: 251.0
End: 252.0
Duration: 1.0
", "line": { "color": "black", "width": 1 }, "name": "Task 28", "showlegend": false, "text": "Duration: 1.0", "type": "scatter", "x": [ 251, 252, 252, 251, 251 ], "xaxis": "x", "y": [ 27.6, 27.6, 28.4, 28.4, 27.6 ], "yaxis": "y" }, { "fill": "toself", "fillcolor": "rgb(253,180,98)", "hovertemplate": "Task 29
Start: 252.0
End: 254.0
Duration: 2.0
", "line": { "color": "black", "width": 1 }, "name": "Task 29", "showlegend": false, "text": "Duration: 2.0", "type": "scatter", "x": [ 252, 254, 254, 252, 252 ], "xaxis": "x", "y": [ 28.6, 28.6, 29.4, 29.4, 28.6 ], "yaxis": "y" }, { "fill": "toself", "fillcolor": "rgb(179,222,105)", "hovertemplate": "Task 30
Start: 254.0
End: 256.0
Duration: 2.0
", "line": { "color": "black", "width": 1 }, "name": "Task 30", "showlegend": false, "text": "Duration: 2.0", "type": "scatter", "x": [ 254, 256, 256, 254, 254 ], "xaxis": "x", "y": [ 29.6, 29.6, 30.4, 30.4, 29.6 ], "yaxis": "y" }, { "fill": "toself", "fillcolor": "rgb(252,205,229)", "hovertemplate": "Task 31
Start: 249.0
End: 250.0
Duration: 1.0
", "line": { "color": "black", "width": 1 }, "name": "Task 31", "showlegend": false, "text": "Duration: 1.0", "type": "scatter", "x": [ 249, 250, 250, 249, 249 ], "xaxis": "x", "y": [ 30.6, 30.6, 31.4, 31.4, 30.6 ], "yaxis": "y" }, { "fill": "toself", "fillcolor": "rgb(217,217,217)", "hovertemplate": "Task 32
Start: 250.0
End: 251.0
Duration: 1.0
", "line": { "color": "black", "width": 1 }, "name": "Task 32", "showlegend": false, "text": "Duration: 1.0", "type": "scatter", "x": [ 250, 251, 251, 250, 250 ], "xaxis": "x", "y": [ 31.6, 31.6, 32.4, 32.4, 31.6 ], "yaxis": "y" }, { "fill": "toself", "fillcolor": "rgb(188,128,189)", "hovertemplate": "Task 33
Start: 260.0
End: 260.0
Duration: 0.0
", "line": { "color": "black", "width": 1 }, "name": "Task 33", "showlegend": false, "text": "Duration: 0.0", "type": "scatter", "x": [ 260, 260, 260, 260, 260 ], "xaxis": "x", "y": [ 32.6, 32.6, 33.4, 33.4, 32.6 ], "yaxis": "y" }, { "fill": "toself", "fillcolor": "rgb(204,235,197)", "hovertemplate": "Task 34
Start: 260.0
End: 293.0
Duration: 33.0
", "line": { "color": "black", "width": 1 }, "name": "Task 34", "showlegend": false, "text": "Duration: 33.0", "type": "scatter", "x": [ 260, 293, 293, 260, 260 ], "xaxis": "x", "y": [ 33.6, 33.6, 34.4, 34.4, 33.6 ], "yaxis": "y" }, { "fill": "toself", "fillcolor": "rgb(255,237,111)", "hovertemplate": "Task 35
Start: 290.0
End: 291.0
Duration: 1.0
", "line": { "color": "black", "width": 1 }, "name": "Task 35", "showlegend": false, "text": "Duration: 1.0", "type": "scatter", "x": [ 290, 291, 291, 290, 290 ], "xaxis": "x", "y": [ 34.6, 34.6, 35.4, 35.4, 34.6 ], "yaxis": "y" }, { "fill": "toself", "fillcolor": "rgb(141,211,199)", "hovertemplate": "Task 36
Start: 291.0
End: 293.0
Duration: 2.0
", "line": { "color": "black", "width": 1 }, "name": "Task 36", "showlegend": false, "text": "Duration: 2.0", "type": "scatter", "x": [ 291, 293, 293, 291, 291 ], "xaxis": "x", "y": [ 35.6, 35.6, 36.4, 36.4, 35.6 ], "yaxis": "y" }, { "fill": "toself", "fillcolor": "rgb(255,255,179)", "hovertemplate": "Task 37
Start: 285.0
End: 286.0
Duration: 1.0
", "line": { "color": "black", "width": 1 }, "name": "Task 37", "showlegend": false, "text": "Duration: 1.0", "type": "scatter", "x": [ 285, 286, 286, 285, 285 ], "xaxis": "x", "y": [ 36.6, 36.6, 37.4, 37.4, 36.6 ], "yaxis": "y" }, { "fill": "toself", "fillcolor": "rgb(190,186,218)", "hovertemplate": "Task 38
Start: 286.0
End: 288.0
Duration: 2.0
", "line": { "color": "black", "width": 1 }, "name": "Task 38", "showlegend": false, "text": "Duration: 2.0", "type": "scatter", "x": [ 286, 288, 288, 286, 286 ], "xaxis": "x", "y": [ 37.6, 37.6, 38.4, 38.4, 37.6 ], "yaxis": "y" }, { "fill": "toself", "fillcolor": "rgb(251,128,114)", "hovertemplate": "Task 39
Start: 288.0
End: 290.0
Duration: 2.0
", "line": { "color": "black", "width": 1 }, "name": "Task 39", "showlegend": false, "text": "Duration: 2.0", "type": "scatter", "x": [ 288, 290, 290, 288, 288 ], "xaxis": "x", "y": [ 38.6, 38.6, 39.4, 39.4, 38.6 ], "yaxis": "y" }, { "fill": "toself", "fillcolor": "rgb(128,177,211)", "hovertemplate": "Task 40
Start: 283.0
End: 284.0
Duration: 1.0
", "line": { "color": "black", "width": 1 }, "name": "Task 40", "showlegend": false, "text": "Duration: 1.0", "type": "scatter", "x": [ 283, 284, 284, 283, 283 ], "xaxis": "x", "y": [ 39.6, 39.6, 40.4, 40.4, 39.6 ], "yaxis": "y" }, { "fill": "toself", "fillcolor": "rgb(253,180,98)", "hovertemplate": "Task 41
Start: 284.0
End: 285.0
Duration: 1.0
", "line": { "color": "black", "width": 1 }, "name": "Task 41", "showlegend": false, "text": "Duration: 1.0", "type": "scatter", "x": [ 284, 285, 285, 284, 284 ], "xaxis": "x", "y": [ 40.6, 40.6, 41.4, 41.4, 40.6 ], "yaxis": "y" }, { "fill": "toself", "fillcolor": "rgb(179,222,105)", "hovertemplate": "Task 42
Start: 293.0
End: 293.0
Duration: 0.0
", "line": { "color": "black", "width": 1 }, "name": "Task 42", "showlegend": false, "text": "Duration: 0.0", "type": "scatter", "x": [ 293, 293, 293, 293, 293 ], "xaxis": "x", "y": [ 41.6, 41.6, 42.4, 42.4, 41.6 ], "yaxis": "y" }, { "fill": "toself", "fillcolor": "rgb(252,205,229)", "hovertemplate": "Task 43
Start: 303.0
End: 304.0
Duration: 1.0
", "line": { "color": "black", "width": 1 }, "name": "Task 43", "showlegend": false, "text": "Duration: 1.0", "type": "scatter", "x": [ 303, 304, 304, 303, 303 ], "xaxis": "x", "y": [ 42.6, 42.6, 43.4, 43.4, 42.6 ], "yaxis": "y" }, { "fill": "toself", "fillcolor": "rgb(217,217,217)", "hovertemplate": "Task 44
Start: 300.0
End: 301.0
Duration: 1.0
", "line": { "color": "black", "width": 1 }, "name": "Task 44", "showlegend": false, "text": "Duration: 1.0", "type": "scatter", "x": [ 300, 301, 301, 300, 300 ], "xaxis": "x", "y": [ 43.6, 43.6, 44.4, 44.4, 43.6 ], "yaxis": "y" }, { "fill": "toself", "fillcolor": "rgb(188,128,189)", "hovertemplate": "Task 45
Start: 301.0
End: 303.0
Duration: 2.0
", "line": { "color": "black", "width": 1 }, "name": "Task 45", "showlegend": false, "text": "Duration: 2.0", "type": "scatter", "x": [ 301, 303, 303, 301, 301 ], "xaxis": "x", "y": [ 44.6, 44.6, 45.4, 45.4, 44.6 ], "yaxis": "y" }, { "fill": "toself", "fillcolor": "rgb(204,235,197)", "hovertemplate": "Task 46
Start: 295.0
End: 296.0
Duration: 1.0
", "line": { "color": "black", "width": 1 }, "name": "Task 46", "showlegend": false, "text": "Duration: 1.0", "type": "scatter", "x": [ 295, 296, 296, 295, 295 ], "xaxis": "x", "y": [ 45.6, 45.6, 46.4, 46.4, 45.6 ], "yaxis": "y" }, { "fill": "toself", "fillcolor": "rgb(255,237,111)", "hovertemplate": "Task 47
Start: 296.0
End: 298.0
Duration: 2.0
", "line": { "color": "black", "width": 1 }, "name": "Task 47", "showlegend": false, "text": "Duration: 2.0", "type": "scatter", "x": [ 296, 298, 298, 296, 296 ], "xaxis": "x", "y": [ 46.6, 46.6, 47.4, 47.4, 46.6 ], "yaxis": "y" }, { "fill": "toself", "fillcolor": "rgb(141,211,199)", "hovertemplate": "Task 48
Start: 298.0
End: 300.0
Duration: 2.0
", "line": { "color": "black", "width": 1 }, "name": "Task 48", "showlegend": false, "text": "Duration: 2.0", "type": "scatter", "x": [ 298, 300, 300, 298, 298 ], "xaxis": "x", "y": [ 47.6, 47.6, 48.4, 48.4, 47.6 ], "yaxis": "y" }, { "fill": "toself", "fillcolor": "rgb(255,255,179)", "hovertemplate": "Task 49
Start: 293.0
End: 294.0
Duration: 1.0
", "line": { "color": "black", "width": 1 }, "name": "Task 49", "showlegend": false, "text": "Duration: 1.0", "type": "scatter", "x": [ 293, 294, 294, 293, 293 ], "xaxis": "x", "y": [ 48.6, 48.6, 49.4, 49.4, 48.6 ], "yaxis": "y" }, { "fill": "toself", "fillcolor": "rgb(190,186,218)", "hovertemplate": "Task 50
Start: 294.0
End: 295.0
Duration: 1.0
", "line": { "color": "black", "width": 1 }, "name": "Task 50", "showlegend": false, "text": "Duration: 1.0", "type": "scatter", "x": [ 294, 295, 295, 294, 294 ], "xaxis": "x", "y": [ 49.6, 49.6, 50.4, 50.4, 49.6 ], "yaxis": "y" }, { "fill": "toself", "fillcolor": "rgb(251,128,114)", "hovertemplate": "Task 51
Start: 304.0
End: 304.0
Duration: 0.0
", "line": { "color": "black", "width": 1 }, "name": "Task 51", "showlegend": false, "text": "Duration: 0.0", "type": "scatter", "x": [ 304, 304, 304, 304, 304 ], "xaxis": "x", "y": [ 50.6, 50.6, 51.4, 51.4, 50.6 ], "yaxis": "y" }, { "fill": "toself", "fillcolor": "rgb(128,177,211)", "hovertemplate": "Task 52
Start: 304.0
End: 341.0
Duration: 37.0
", "line": { "color": "black", "width": 1 }, "name": "Task 52", "showlegend": false, "text": "Duration: 37.0", "type": "scatter", "x": [ 304, 341, 341, 304, 304 ], "xaxis": "x", "y": [ 51.6, 51.6, 52.4, 52.4, 51.6 ], "yaxis": "y" }, { "fill": "toself", "fillcolor": "rgb(253,180,98)", "hovertemplate": "Task 53
Start: 305.0
End: 307.0
Duration: 2.0
", "line": { "color": "black", "width": 1 }, "name": "Task 53", "showlegend": false, "text": "Duration: 2.0", "type": "scatter", "x": [ 305, 307, 307, 305, 305 ], "xaxis": "x", "y": [ 52.6, 52.6, 53.4, 53.4, 52.6 ], "yaxis": "y" }, { "fill": "toself", "fillcolor": "rgb(179,222,105)", "hovertemplate": "Task 54
Start: 307.0
End: 315.0
Duration: 8.0
", "line": { "color": "black", "width": 1 }, "name": "Task 54", "showlegend": false, "text": "Duration: 8.0", "type": "scatter", "x": [ 307, 315, 315, 307, 307 ], "xaxis": "x", "y": [ 53.6, 53.6, 54.4, 54.4, 53.6 ], "yaxis": "y" }, { "fill": "toself", "fillcolor": "rgb(252,205,229)", "hovertemplate": "Task 55
Start: 315.0
End: 318.0
Duration: 3.0
", "line": { "color": "black", "width": 1 }, "name": "Task 55", "showlegend": false, "text": "Duration: 3.0", "type": "scatter", "x": [ 315, 318, 318, 315, 315 ], "xaxis": "x", "y": [ 54.6, 54.6, 55.4, 55.4, 54.6 ], "yaxis": "y" }, { "fill": "toself", "fillcolor": "rgb(217,217,217)", "hovertemplate": "Task 56
Start: 304.0
End: 305.0
Duration: 1.0
", "line": { "color": "black", "width": 1 }, "name": "Task 56", "showlegend": false, "text": "Duration: 1.0", "type": "scatter", "x": [ 304, 305, 305, 304, 304 ], "xaxis": "x", "y": [ 55.6, 55.6, 56.4, 56.4, 55.6 ], "yaxis": "y" }, { "fill": "toself", "fillcolor": "rgb(188,128,189)", "hovertemplate": "Task 57
Start: 341.0
End: 341.0
Duration: 0.0
", "line": { "color": "black", "width": 1 }, "name": "Task 57", "showlegend": false, "text": "Duration: 0.0", "type": "scatter", "x": [ 341, 341, 341, 341, 341 ], "xaxis": "x", "y": [ 56.6, 56.6, 57.4, 57.4, 56.6 ], "yaxis": "y" }, { "fill": "toself", "fillcolor": "rgb(204,235,197)", "hovertemplate": "Task 58
Start: 372.0
End: 374.0
Duration: 2.0
", "line": { "color": "black", "width": 1 }, "name": "Task 58", "showlegend": false, "text": "Duration: 2.0", "type": "scatter", "x": [ 372, 374, 374, 372, 372 ], "xaxis": "x", "y": [ 57.6, 57.6, 58.4, 58.4, 57.6 ], "yaxis": "y" }, { "fill": "toself", "fillcolor": "rgb(255,237,111)", "hovertemplate": "Task 59
Start: 367.0
End: 368.0
Duration: 1.0
", "line": { "color": "black", "width": 1 }, "name": "Task 59", "showlegend": false, "text": "Duration: 1.0", "type": "scatter", "x": [ 367, 368, 368, 367, 367 ], "xaxis": "x", "y": [ 58.6, 58.6, 59.4, 59.4, 58.6 ], "yaxis": "y" }, { "fill": "toself", "fillcolor": "rgb(141,211,199)", "hovertemplate": "Task 60
Start: 368.0
End: 370.0
Duration: 2.0
", "line": { "color": "black", "width": 1 }, "name": "Task 60", "showlegend": false, "text": "Duration: 2.0", "type": "scatter", "x": [ 368, 370, 370, 368, 368 ], "xaxis": "x", "y": [ 59.6, 59.6, 60.4, 60.4, 59.6 ], "yaxis": "y" }, { "fill": "toself", "fillcolor": "rgb(255,255,179)", "hovertemplate": "Task 61
Start: 370.0
End: 372.0
Duration: 2.0
", "line": { "color": "black", "width": 1 }, "name": "Task 61", "showlegend": false, "text": "Duration: 2.0", "type": "scatter", "x": [ 370, 372, 372, 370, 370 ], "xaxis": "x", "y": [ 60.6, 60.6, 61.4, 61.4, 60.6 ], "yaxis": "y" }, { "fill": "toself", "fillcolor": "rgb(190,186,218)", "hovertemplate": "Task 62
Start: 341.0
End: 342.0
Duration: 1.0
", "line": { "color": "black", "width": 1 }, "name": "Task 62", "showlegend": false, "text": "Duration: 1.0", "type": "scatter", "x": [ 341, 342, 342, 341, 341 ], "xaxis": "x", "y": [ 61.6, 61.6, 62.4, 62.4, 61.6 ], "yaxis": "y" }, { "fill": "toself", "fillcolor": "rgb(251,128,114)", "hovertemplate": "Task 63
Start: 342.0
End: 344.0
Duration: 2.0
", "line": { "color": "black", "width": 1 }, "name": "Task 63", "showlegend": false, "text": "Duration: 2.0", "type": "scatter", "x": [ 342, 344, 344, 342, 342 ], "xaxis": "x", "y": [ 62.6, 62.6, 63.4, 63.4, 62.6 ], "yaxis": "y" }, { "fill": "toself", "fillcolor": "rgb(128,177,211)", "hovertemplate": "Task 64
Start: 344.0
End: 363.0
Duration: 19.0
", "line": { "color": "black", "width": 1 }, "name": "Task 64", "showlegend": false, "text": "Duration: 19.0", "type": "scatter", "x": [ 344, 363, 363, 344, 344 ], "xaxis": "x", "y": [ 63.6, 63.6, 64.4, 64.4, 63.6 ], "yaxis": "y" }, { "fill": "toself", "fillcolor": "rgb(253,180,98)", "hovertemplate": "Task 65
Start: 363.0
End: 365.0
Duration: 2.0
", "line": { "color": "black", "width": 1 }, "name": "Task 65", "showlegend": false, "text": "Duration: 2.0", "type": "scatter", "x": [ 363, 365, 365, 363, 363 ], "xaxis": "x", "y": [ 64.6, 64.6, 65.4, 65.4, 64.6 ], "yaxis": "y" }, { "fill": "toself", "fillcolor": "rgb(179,222,105)", "hovertemplate": "Task 66
Start: 365.0
End: 367.0
Duration: 2.0
", "line": { "color": "black", "width": 1 }, "name": "Task 66", "showlegend": false, "text": "Duration: 2.0", "type": "scatter", "x": [ 365, 367, 367, 365, 365 ], "xaxis": "x", "y": [ 65.6, 65.6, 66.4, 66.4, 65.6 ], "yaxis": "y" }, { "fill": "toself", "fillcolor": "rgb(252,205,229)", "hovertemplate": "Task 67
Start: 341.0
End: 342.0
Duration: 1.0
", "line": { "color": "black", "width": 1 }, "name": "Task 67", "showlegend": false, "text": "Duration: 1.0", "type": "scatter", "x": [ 341, 342, 342, 341, 341 ], "xaxis": "x", "y": [ 66.6, 66.6, 67.4, 67.4, 66.6 ], "yaxis": "y" }, { "fill": "toself", "fillcolor": "rgb(217,217,217)", "hovertemplate": "Task 68
Start: 342.0
End: 343.0
Duration: 1.0
", "line": { "color": "black", "width": 1 }, "name": "Task 68", "showlegend": false, "text": "Duration: 1.0", "type": "scatter", "x": [ 342, 343, 343, 342, 342 ], "xaxis": "x", "y": [ 67.6, 67.6, 68.4, 68.4, 67.6 ], "yaxis": "y" }, { "fill": "toself", "fillcolor": "rgb(188,128,189)", "hovertemplate": "Task 69
Start: 374.0
End: 375.0
Duration: 1.0
", "line": { "color": "black", "width": 1 }, "name": "Task 69", "showlegend": false, "text": "Duration: 1.0", "type": "scatter", "x": [ 374, 375, 375, 374, 374 ], "xaxis": "x", "y": [ 68.6, 68.6, 69.4, 69.4, 68.6 ], "yaxis": "y" }, { "fill": "toself", "fillcolor": "rgb(102, 197, 204)", "hovertemplate": "Task 70
Start: 101981.0
End: 101981.0
Duration: 0.0
Accelerator: 10
", "line": { "color": "black", "width": 1 }, "name": "Task 70", "showlegend": false, "text": "Duration: 0.0", "type": "scatter", "x": [ 0, 0, 0, 0, 0 ], "xaxis": "x2", "y": [ 69.6, 69.6, 70.4, 70.4, 69.6 ], "yaxis": "y2" }, { "fill": "toself", "fillcolor": "rgb(246, 207, 113)", "hovertemplate": "Task 0
Start: 101981.0
End: 101982.0
Duration: 1.0
Accelerator: 10
", "line": { "color": "black", "width": 1 }, "name": "Task 0", "showlegend": false, "text": "Duration: 1.0", "type": "scatter", "x": [ 0, 1, 1, 0, 0 ], "xaxis": "x2", "y": [ -0.4, -0.4, 0.4, 0.4, -0.4 ], "yaxis": "y2" }, { "fill": "toself", "fillcolor": "rgb(248, 156, 116)", "hovertemplate": "Task 1
Start: 101982.0
End: 101986.0
Duration: 4.0
Accelerator: 10
", "line": { "color": "black", "width": 1 }, "name": "Task 1", "showlegend": false, "text": "Duration: 4.0", "type": "scatter", "x": [ 1, 5, 5, 1, 1 ], "xaxis": "x2", "y": [ 0.6, 0.6, 1.4, 1.4, 0.6 ], "yaxis": "y2" }, { "fill": "toself", "fillcolor": "rgb(220, 176, 242)", "hovertemplate": "Task 2
Start: 101986.0
End: 101993.0
Duration: 7.0
Accelerator: 10
", "line": { "color": "black", "width": 1 }, "name": "Task 2", "showlegend": false, "text": "Duration: 7.0", "type": "scatter", "x": [ 5, 12, 12, 5, 5 ], "xaxis": "x2", "y": [ 1.6, 1.6, 2.4, 2.4, 1.6 ], "yaxis": "y2" }, { "fill": "toself", "fillcolor": "rgb(135, 197, 95)", "hovertemplate": "Task 4
Start: 101993.0
End: 101998.0
Duration: 5.0
Accelerator: 6
", "line": { "color": "black", "width": 1 }, "name": "Task 4", "showlegend": false, "text": "Duration: 5.0", "type": "scatter", "x": [ 12, 17, 17, 12, 12 ], "xaxis": "x2", "y": [ 3.6, 3.6, 4.4, 4.4, 3.6 ], "yaxis": "y2" }, { "fill": "toself", "fillcolor": "rgb(158, 185, 243)", "hovertemplate": "Task 3
Start: 101993.0
End: 102030.0
Duration: 37.0
Accelerator: 10
", "line": { "color": "black", "width": 1 }, "name": "Task 3", "showlegend": false, "text": "Duration: 37.0", "type": "scatter", "x": [ 12, 49, 49, 12, 12 ], "xaxis": "x2", "y": [ 2.6, 2.6, 3.4, 3.4, 2.6 ], "yaxis": "y2" }, { "fill": "toself", "fillcolor": "rgb(254, 136, 177)", "hovertemplate": "Task 5
Start: 102030.0
End: 102030.0
Duration: 0.0
Accelerator: 6
", "line": { "color": "black", "width": 1 }, "name": "Task 5", "showlegend": false, "text": "Duration: 0.0", "type": "scatter", "x": [ 49, 49, 49, 49, 49 ], "xaxis": "x2", "y": [ 4.6, 4.6, 5.4, 5.4, 4.6 ], "yaxis": "y2" }, { "fill": "toself", "fillcolor": "rgb(201, 219, 116)", "hovertemplate": "Task 8
Start: 102030.0
End: 102031.0
Duration: 1.0
Accelerator: 7
", "line": { "color": "black", "width": 1 }, "name": "Task 8", "showlegend": false, "text": "Duration: 1.0", "type": "scatter", "x": [ 49, 50, 50, 49, 49 ], "xaxis": "x2", "y": [ 7.6, 7.6, 8.4, 8.4, 7.6 ], "yaxis": "y2" }, { "fill": "toself", "fillcolor": "rgb(139, 224, 164)", "hovertemplate": "Task 6
Start: 102030.0
End: 102103.0
Duration: 73.0
Accelerator: 6
", "line": { "color": "black", "width": 1 }, "name": "Task 6", "showlegend": false, "text": "Duration: 73.0", "type": "scatter", "x": [ 49, 122, 122, 49, 49 ], "xaxis": "x2", "y": [ 5.6, 5.6, 6.4, 6.4, 5.6 ], "yaxis": "y2" }, { "fill": "toself", "fillcolor": "rgb(180, 151, 231)", "hovertemplate": "Task 9
Start: 102031.0
End: 102034.0
Duration: 3.0
Accelerator: 7
", "line": { "color": "black", "width": 1 }, "name": "Task 9", "showlegend": false, "text": "Duration: 3.0", "type": "scatter", "x": [ 50, 53, 53, 50, 50 ], "xaxis": "x2", "y": [ 8.6, 8.6, 9.4, 9.4, 8.6 ], "yaxis": "y2" }, { "fill": "toself", "fillcolor": "rgb(179, 179, 179)", "hovertemplate": "Task 10
Start: 102034.0
End: 102073.0
Duration: 39.0
Accelerator: 7
", "line": { "color": "black", "width": 1 }, "name": "Task 10", "showlegend": false, "text": "Duration: 39.0", "type": "scatter", "x": [ 53, 92, 92, 53, 53 ], "xaxis": "x2", "y": [ 9.6, 9.6, 10.4, 10.4, 9.6 ], "yaxis": "y2" }, { "fill": "toself", "fillcolor": "rgb(102, 197, 204)", "hovertemplate": "Task 11
Start: 102073.0
End: 102078.0
Duration: 5.0
Accelerator: 3
", "line": { "color": "black", "width": 1 }, "name": "Task 11", "showlegend": false, "text": "Duration: 5.0", "type": "scatter", "x": [ 92, 97, 97, 92, 92 ], "xaxis": "x2", "y": [ 10.6, 10.6, 11.4, 11.4, 10.6 ], "yaxis": "y2" }, { "fill": "toself", "fillcolor": "rgb(246, 207, 113)", "hovertemplate": "Task 7
Start: 102103.0
End: 102108.0
Duration: 5.0
Accelerator: 3
", "line": { "color": "black", "width": 1 }, "name": "Task 7", "showlegend": false, "text": "Duration: 5.0", "type": "scatter", "x": [ 122, 127, 127, 122, 122 ], "xaxis": "x2", "y": [ 6.6, 6.6, 7.4, 7.4, 6.6 ], "yaxis": "y2" }, { "fill": "toself", "fillcolor": "rgb(248, 156, 116)", "hovertemplate": "Task 12
Start: 102108.0
End: 102108.0
Duration: 0.0
Accelerator: 3
", "line": { "color": "black", "width": 1 }, "name": "Task 12", "showlegend": false, "text": "Duration: 0.0", "type": "scatter", "x": [ 127, 127, 127, 127, 127 ], "xaxis": "x2", "y": [ 11.6, 11.6, 12.4, 12.4, 11.6 ], "yaxis": "y2" }, { "fill": "toself", "fillcolor": "rgb(220, 176, 242)", "hovertemplate": "Task 13
Start: 102108.0
End: 102115.0
Duration: 7.0
Accelerator: 3
", "line": { "color": "black", "width": 1 }, "name": "Task 13", "showlegend": false, "text": "Duration: 7.0", "type": "scatter", "x": [ 127, 134, 134, 127, 127 ], "xaxis": "x2", "y": [ 12.6, 12.6, 13.4, 13.4, 12.6 ], "yaxis": "y2" }, { "fill": "toself", "fillcolor": "rgb(135, 197, 95)", "hovertemplate": "Task 14
Start: 102115.0
End: 102116.0
Duration: 1.0
Accelerator: 3
", "line": { "color": "black", "width": 1 }, "name": "Task 14", "showlegend": false, "text": "Duration: 1.0", "type": "scatter", "x": [ 134, 135, 135, 134, 134 ], "xaxis": "x2", "y": [ 13.6, 13.6, 14.4, 14.4, 13.6 ], "yaxis": "y2" }, { "fill": "toself", "fillcolor": "rgb(158, 185, 243)", "hovertemplate": "Task 15
Start: 102116.0
End: 102116.0
Duration: 0.0
Accelerator: 3
", "line": { "color": "black", "width": 1 }, "name": "Task 15", "showlegend": false, "text": "Duration: 0.0", "type": "scatter", "x": [ 135, 135, 135, 135, 135 ], "xaxis": "x2", "y": [ 14.6, 14.6, 15.4, 15.4, 14.6 ], "yaxis": "y2" }, { "fill": "toself", "fillcolor": "rgb(254, 136, 177)", "hovertemplate": "Task 17
Start: 102116.0
End: 102117.0
Duration: 1.0
Accelerator: 2
", "line": { "color": "black", "width": 1 }, "name": "Task 17", "showlegend": false, "text": "Duration: 1.0", "type": "scatter", "x": [ 135, 136, 136, 135, 135 ], "xaxis": "x2", "y": [ 16.6, 16.6, 17.4, 17.4, 16.6 ], "yaxis": "y2" }, { "fill": "toself", "fillcolor": "rgb(201, 219, 116)", "hovertemplate": "Task 16
Start: 102116.0
End: 102130.0
Duration: 14.0
Accelerator: 3
", "line": { "color": "black", "width": 1 }, "name": "Task 16", "showlegend": false, "text": "Duration: 14.0", "type": "scatter", "x": [ 135, 149, 149, 135, 135 ], "xaxis": "x2", "y": [ 15.6, 15.6, 16.4, 16.4, 15.6 ], "yaxis": "y2" }, { "fill": "toself", "fillcolor": "rgb(139, 224, 164)", "hovertemplate": "Task 22
Start: 102117.0
End: 102118.0
Duration: 1.0
Accelerator: 2
", "line": { "color": "black", "width": 1 }, "name": "Task 22", "showlegend": false, "text": "Duration: 1.0", "type": "scatter", "x": [ 136, 137, 137, 136, 136 ], "xaxis": "x2", "y": [ 21.6, 21.6, 22.4, 22.4, 21.6 ], "yaxis": "y2" }, { "fill": "toself", "fillcolor": "rgb(180, 151, 231)", "hovertemplate": "Task 18
Start: 102118.0
End: 102120.0
Duration: 2.0
Accelerator: 2
", "line": { "color": "black", "width": 1 }, "name": "Task 18", "showlegend": false, "text": "Duration: 2.0", "type": "scatter", "x": [ 137, 139, 139, 137, 137 ], "xaxis": "x2", "y": [ 17.6, 17.6, 18.4, 18.4, 17.6 ], "yaxis": "y2" }, { "fill": "toself", "fillcolor": "rgb(179, 179, 179)", "hovertemplate": "Task 23
Start: 102120.0
End: 102121.0
Duration: 1.0
Accelerator: 2
", "line": { "color": "black", "width": 1 }, "name": "Task 23", "showlegend": false, "text": "Duration: 1.0", "type": "scatter", "x": [ 139, 140, 140, 139, 139 ], "xaxis": "x2", "y": [ 22.6, 22.6, 23.4, 23.4, 22.6 ], "yaxis": "y2" }, { "fill": "toself", "fillcolor": "rgb(102, 197, 204)", "hovertemplate": "Task 19
Start: 102121.0
End: 102122.0
Duration: 1.0
Accelerator: 2
", "line": { "color": "black", "width": 1 }, "name": "Task 19", "showlegend": false, "text": "Duration: 1.0", "type": "scatter", "x": [ 140, 141, 141, 140, 140 ], "xaxis": "x2", "y": [ 18.6, 18.6, 19.4, 19.4, 18.6 ], "yaxis": "y2" }, { "fill": "toself", "fillcolor": "rgb(246, 207, 113)", "hovertemplate": "Task 20
Start: 102122.0
End: 102124.0
Duration: 2.0
Accelerator: 2
", "line": { "color": "black", "width": 1 }, "name": "Task 20", "showlegend": false, "text": "Duration: 2.0", "type": "scatter", "x": [ 141, 143, 143, 141, 141 ], "xaxis": "x2", "y": [ 19.6, 19.6, 20.4, 20.4, 19.6 ], "yaxis": "y2" }, { "fill": "toself", "fillcolor": "rgb(248, 156, 116)", "hovertemplate": "Task 21
Start: 102124.0
End: 102126.0
Duration: 2.0
Accelerator: 2
", "line": { "color": "black", "width": 1 }, "name": "Task 21", "showlegend": false, "text": "Duration: 2.0", "type": "scatter", "x": [ 143, 145, 145, 143, 143 ], "xaxis": "x2", "y": [ 20.6, 20.6, 21.4, 21.4, 20.6 ], "yaxis": "y2" }, { "fill": "toself", "fillcolor": "rgb(220, 176, 242)", "hovertemplate": "Task 24
Start: 102130.0
End: 102130.0
Duration: 0.0
Accelerator: 2
", "line": { "color": "black", "width": 1 }, "name": "Task 24", "showlegend": false, "text": "Duration: 0.0", "type": "scatter", "x": [ 149, 149, 149, 149, 149 ], "xaxis": "x2", "y": [ 23.6, 23.6, 24.4, 24.4, 23.6 ], "yaxis": "y2" }, { "fill": "toself", "fillcolor": "rgb(135, 197, 95)", "hovertemplate": "Task 25
Start: 102130.0
End: 102131.0
Duration: 1.0
Accelerator: 2
", "line": { "color": "black", "width": 1 }, "name": "Task 25", "showlegend": false, "text": "Duration: 1.0", "type": "scatter", "x": [ 149, 150, 150, 149, 149 ], "xaxis": "x2", "y": [ 24.6, 24.6, 25.4, 25.4, 24.6 ], "yaxis": "y2" }, { "fill": "toself", "fillcolor": "rgb(158, 185, 243)", "hovertemplate": "Task 31
Start: 102131.0
End: 102132.0
Duration: 1.0
Accelerator: 2
", "line": { "color": "black", "width": 1 }, "name": "Task 31", "showlegend": false, "text": "Duration: 1.0", "type": "scatter", "x": [ 150, 151, 151, 150, 150 ], "xaxis": "x2", "y": [ 30.6, 30.6, 31.4, 31.4, 30.6 ], "yaxis": "y2" }, { "fill": "toself", "fillcolor": "rgb(254, 136, 177)", "hovertemplate": "Task 28
Start: 102132.0
End: 102133.0
Duration: 1.0
Accelerator: 2
", "line": { "color": "black", "width": 1 }, "name": "Task 28", "showlegend": false, "text": "Duration: 1.0", "type": "scatter", "x": [ 151, 152, 152, 151, 151 ], "xaxis": "x2", "y": [ 27.6, 27.6, 28.4, 28.4, 27.6 ], "yaxis": "y2" }, { "fill": "toself", "fillcolor": "rgb(201, 219, 116)", "hovertemplate": "Task 32
Start: 102133.0
End: 102134.0
Duration: 1.0
Accelerator: 2
", "line": { "color": "black", "width": 1 }, "name": "Task 32", "showlegend": false, "text": "Duration: 1.0", "type": "scatter", "x": [ 152, 153, 153, 152, 152 ], "xaxis": "x2", "y": [ 31.6, 31.6, 32.4, 32.4, 31.6 ], "yaxis": "y2" }, { "fill": "toself", "fillcolor": "rgb(139, 224, 164)", "hovertemplate": "Task 29
Start: 102134.0
End: 102136.0
Duration: 2.0
Accelerator: 2
", "line": { "color": "black", "width": 1 }, "name": "Task 29", "showlegend": false, "text": "Duration: 2.0", "type": "scatter", "x": [ 153, 155, 155, 153, 153 ], "xaxis": "x2", "y": [ 28.6, 28.6, 29.4, 29.4, 28.6 ], "yaxis": "y2" }, { "fill": "toself", "fillcolor": "rgb(180, 151, 231)", "hovertemplate": "Task 26
Start: 102136.0
End: 102137.0
Duration: 1.0
Accelerator: 2
", "line": { "color": "black", "width": 1 }, "name": "Task 26", "showlegend": false, "text": "Duration: 1.0", "type": "scatter", "x": [ 155, 156, 156, 155, 155 ], "xaxis": "x2", "y": [ 25.6, 25.6, 26.4, 26.4, 25.6 ], "yaxis": "y2" }, { "fill": "toself", "fillcolor": "rgb(179, 179, 179)", "hovertemplate": "Task 30
Start: 102137.0
End: 102139.0
Duration: 2.0
Accelerator: 2
", "line": { "color": "black", "width": 1 }, "name": "Task 30", "showlegend": false, "text": "Duration: 2.0", "type": "scatter", "x": [ 156, 158, 158, 156, 156 ], "xaxis": "x2", "y": [ 29.6, 29.6, 30.4, 30.4, 29.6 ], "yaxis": "y2" }, { "fill": "toself", "fillcolor": "rgb(102, 197, 204)", "hovertemplate": "Task 27
Start: 102139.0
End: 102141.0
Duration: 2.0
Accelerator: 2
", "line": { "color": "black", "width": 1 }, "name": "Task 27", "showlegend": false, "text": "Duration: 2.0", "type": "scatter", "x": [ 158, 160, 160, 158, 158 ], "xaxis": "x2", "y": [ 26.6, 26.6, 27.4, 27.4, 26.6 ], "yaxis": "y2" }, { "fill": "toself", "fillcolor": "rgb(246, 207, 113)", "hovertemplate": "Task 33
Start: 102141.0
End: 102141.0
Duration: 0.0
Accelerator: 2
", "line": { "color": "black", "width": 1 }, "name": "Task 33", "showlegend": false, "text": "Duration: 0.0", "type": "scatter", "x": [ 160, 160, 160, 160, 160 ], "xaxis": "x2", "y": [ 32.6, 32.6, 33.4, 33.4, 32.6 ], "yaxis": "y2" }, { "fill": "toself", "fillcolor": "rgb(248, 156, 116)", "hovertemplate": "Task 35
Start: 102141.0
End: 102142.0
Duration: 1.0
Accelerator: 1
", "line": { "color": "black", "width": 1 }, "name": "Task 35", "showlegend": false, "text": "Duration: 1.0", "type": "scatter", "x": [ 160, 161, 161, 160, 160 ], "xaxis": "x2", "y": [ 34.6, 34.6, 35.4, 35.4, 34.6 ], "yaxis": "y2" }, { "fill": "toself", "fillcolor": "rgb(220, 176, 242)", "hovertemplate": "Task 34
Start: 102141.0
End: 102155.0
Duration: 14.0
Accelerator: 2
", "line": { "color": "black", "width": 1 }, "name": "Task 34", "showlegend": false, "text": "Duration: 14.0", "type": "scatter", "x": [ 160, 174, 174, 160, 160 ], "xaxis": "x2", "y": [ 33.6, 33.6, 34.4, 34.4, 33.6 ], "yaxis": "y2" }, { "fill": "toself", "fillcolor": "rgb(135, 197, 95)", "hovertemplate": "Task 40
Start: 102142.0
End: 102143.0
Duration: 1.0
Accelerator: 1
", "line": { "color": "black", "width": 1 }, "name": "Task 40", "showlegend": false, "text": "Duration: 1.0", "type": "scatter", "x": [ 161, 162, 162, 161, 161 ], "xaxis": "x2", "y": [ 39.6, 39.6, 40.4, 40.4, 39.6 ], "yaxis": "y2" }, { "fill": "toself", "fillcolor": "rgb(158, 185, 243)", "hovertemplate": "Task 36
Start: 102143.0
End: 102145.0
Duration: 2.0
Accelerator: 1
", "line": { "color": "black", "width": 1 }, "name": "Task 36", "showlegend": false, "text": "Duration: 2.0", "type": "scatter", "x": [ 162, 164, 164, 162, 162 ], "xaxis": "x2", "y": [ 35.6, 35.6, 36.4, 36.4, 35.6 ], "yaxis": "y2" }, { "fill": "toself", "fillcolor": "rgb(254, 136, 177)", "hovertemplate": "Task 41
Start: 102145.0
End: 102146.0
Duration: 1.0
Accelerator: 1
", "line": { "color": "black", "width": 1 }, "name": "Task 41", "showlegend": false, "text": "Duration: 1.0", "type": "scatter", "x": [ 164, 165, 165, 164, 164 ], "xaxis": "x2", "y": [ 40.6, 40.6, 41.4, 41.4, 40.6 ], "yaxis": "y2" }, { "fill": "toself", "fillcolor": "rgb(201, 219, 116)", "hovertemplate": "Task 37
Start: 102146.0
End: 102147.0
Duration: 1.0
Accelerator: 1
", "line": { "color": "black", "width": 1 }, "name": "Task 37", "showlegend": false, "text": "Duration: 1.0", "type": "scatter", "x": [ 165, 166, 166, 165, 165 ], "xaxis": "x2", "y": [ 36.6, 36.6, 37.4, 37.4, 36.6 ], "yaxis": "y2" }, { "fill": "toself", "fillcolor": "rgb(139, 224, 164)", "hovertemplate": "Task 38
Start: 102147.0
End: 102149.0
Duration: 2.0
Accelerator: 1
", "line": { "color": "black", "width": 1 }, "name": "Task 38", "showlegend": false, "text": "Duration: 2.0", "type": "scatter", "x": [ 166, 168, 168, 166, 166 ], "xaxis": "x2", "y": [ 37.6, 37.6, 38.4, 38.4, 37.6 ], "yaxis": "y2" }, { "fill": "toself", "fillcolor": "rgb(180, 151, 231)", "hovertemplate": "Task 39
Start: 102149.0
End: 102151.0
Duration: 2.0
Accelerator: 1
", "line": { "color": "black", "width": 1 }, "name": "Task 39", "showlegend": false, "text": "Duration: 2.0", "type": "scatter", "x": [ 168, 170, 170, 168, 168 ], "xaxis": "x2", "y": [ 38.6, 38.6, 39.4, 39.4, 38.6 ], "yaxis": "y2" }, { "fill": "toself", "fillcolor": "rgb(179, 179, 179)", "hovertemplate": "Task 42
Start: 102155.0
End: 102155.0
Duration: 0.0
Accelerator: 1
", "line": { "color": "black", "width": 1 }, "name": "Task 42", "showlegend": false, "text": "Duration: 0.0", "type": "scatter", "x": [ 174, 174, 174, 174, 174 ], "xaxis": "x2", "y": [ 41.6, 41.6, 42.4, 42.4, 41.6 ], "yaxis": "y2" }, { "fill": "toself", "fillcolor": "rgb(102, 197, 204)", "hovertemplate": "Task 43
Start: 102155.0
End: 102156.0
Duration: 1.0
Accelerator: 1
", "line": { "color": "black", "width": 1 }, "name": "Task 43", "showlegend": false, "text": "Duration: 1.0", "type": "scatter", "x": [ 174, 175, 175, 174, 174 ], "xaxis": "x2", "y": [ 42.6, 42.6, 43.4, 43.4, 42.6 ], "yaxis": "y2" }, { "fill": "toself", "fillcolor": "rgb(246, 207, 113)", "hovertemplate": "Task 49
Start: 102156.0
End: 102157.0
Duration: 1.0
Accelerator: 1
", "line": { "color": "black", "width": 1 }, "name": "Task 49", "showlegend": false, "text": "Duration: 1.0", "type": "scatter", "x": [ 175, 176, 176, 175, 175 ], "xaxis": "x2", "y": [ 48.6, 48.6, 49.4, 49.4, 48.6 ], "yaxis": "y2" }, { "fill": "toself", "fillcolor": "rgb(248, 156, 116)", "hovertemplate": "Task 46
Start: 102157.0
End: 102158.0
Duration: 1.0
Accelerator: 1
", "line": { "color": "black", "width": 1 }, "name": "Task 46", "showlegend": false, "text": "Duration: 1.0", "type": "scatter", "x": [ 176, 177, 177, 176, 176 ], "xaxis": "x2", "y": [ 45.6, 45.6, 46.4, 46.4, 45.6 ], "yaxis": "y2" }, { "fill": "toself", "fillcolor": "rgb(220, 176, 242)", "hovertemplate": "Task 50
Start: 102158.0
End: 102159.0
Duration: 1.0
Accelerator: 1
", "line": { "color": "black", "width": 1 }, "name": "Task 50", "showlegend": false, "text": "Duration: 1.0", "type": "scatter", "x": [ 177, 178, 178, 177, 177 ], "xaxis": "x2", "y": [ 49.6, 49.6, 50.4, 50.4, 49.6 ], "yaxis": "y2" }, { "fill": "toself", "fillcolor": "rgb(135, 197, 95)", "hovertemplate": "Task 47
Start: 102159.0
End: 102161.0
Duration: 2.0
Accelerator: 1
", "line": { "color": "black", "width": 1 }, "name": "Task 47", "showlegend": false, "text": "Duration: 2.0", "type": "scatter", "x": [ 178, 180, 180, 178, 178 ], "xaxis": "x2", "y": [ 46.6, 46.6, 47.4, 47.4, 46.6 ], "yaxis": "y2" }, { "fill": "toself", "fillcolor": "rgb(158, 185, 243)", "hovertemplate": "Task 44
Start: 102161.0
End: 102162.0
Duration: 1.0
Accelerator: 1
", "line": { "color": "black", "width": 1 }, "name": "Task 44", "showlegend": false, "text": "Duration: 1.0", "type": "scatter", "x": [ 180, 181, 181, 180, 180 ], "xaxis": "x2", "y": [ 43.6, 43.6, 44.4, 44.4, 43.6 ], "yaxis": "y2" }, { "fill": "toself", "fillcolor": "rgb(254, 136, 177)", "hovertemplate": "Task 48
Start: 102162.0
End: 102164.0
Duration: 2.0
Accelerator: 1
", "line": { "color": "black", "width": 1 }, "name": "Task 48", "showlegend": false, "text": "Duration: 2.0", "type": "scatter", "x": [ 181, 183, 183, 181, 181 ], "xaxis": "x2", "y": [ 47.6, 47.6, 48.4, 48.4, 47.6 ], "yaxis": "y2" }, { "fill": "toself", "fillcolor": "rgb(201, 219, 116)", "hovertemplate": "Task 45
Start: 102164.0
End: 102166.0
Duration: 2.0
Accelerator: 1
", "line": { "color": "black", "width": 1 }, "name": "Task 45", "showlegend": false, "text": "Duration: 2.0", "type": "scatter", "x": [ 183, 185, 185, 183, 183 ], "xaxis": "x2", "y": [ 44.6, 44.6, 45.4, 45.4, 44.6 ], "yaxis": "y2" }, { "fill": "toself", "fillcolor": "rgb(139, 224, 164)", "hovertemplate": "Task 51
Start: 102166.0
End: 102166.0
Duration: 0.0
Accelerator: 1
", "line": { "color": "black", "width": 1 }, "name": "Task 51", "showlegend": false, "text": "Duration: 0.0", "type": "scatter", "x": [ 185, 185, 185, 185, 185 ], "xaxis": "x2", "y": [ 50.6, 50.6, 51.4, 51.4, 50.6 ], "yaxis": "y2" }, { "fill": "toself", "fillcolor": "rgb(180, 151, 231)", "hovertemplate": "Task 53
Start: 102166.0
End: 102168.0
Duration: 2.0
Accelerator: 0
", "line": { "color": "black", "width": 1 }, "name": "Task 53", "showlegend": false, "text": "Duration: 2.0", "type": "scatter", "x": [ 185, 187, 187, 185, 185 ], "xaxis": "x2", "y": [ 52.6, 52.6, 53.4, 53.4, 52.6 ], "yaxis": "y2" }, { "fill": "toself", "fillcolor": "rgb(179, 179, 179)", "hovertemplate": "Task 52
Start: 102166.0
End: 102185.0
Duration: 19.0
Accelerator: 1
", "line": { "color": "black", "width": 1 }, "name": "Task 52", "showlegend": false, "text": "Duration: 19.0", "type": "scatter", "x": [ 185, 204, 204, 185, 185 ], "xaxis": "x2", "y": [ 51.6, 51.6, 52.4, 52.4, 51.6 ], "yaxis": "y2" }, { "fill": "toself", "fillcolor": "rgb(102, 197, 204)", "hovertemplate": "Task 56
Start: 102168.0
End: 102169.0
Duration: 1.0
Accelerator: 0
", "line": { "color": "black", "width": 1 }, "name": "Task 56", "showlegend": false, "text": "Duration: 1.0", "type": "scatter", "x": [ 187, 188, 188, 187, 187 ], "xaxis": "x2", "y": [ 55.6, 55.6, 56.4, 56.4, 55.6 ], "yaxis": "y2" }, { "fill": "toself", "fillcolor": "rgb(246, 207, 113)", "hovertemplate": "Task 54
Start: 102169.0
End: 102177.0
Duration: 8.0
Accelerator: 0
", "line": { "color": "black", "width": 1 }, "name": "Task 54", "showlegend": false, "text": "Duration: 8.0", "type": "scatter", "x": [ 188, 196, 196, 188, 188 ], "xaxis": "x2", "y": [ 53.6, 53.6, 54.4, 54.4, 53.6 ], "yaxis": "y2" }, { "fill": "toself", "fillcolor": "rgb(248, 156, 116)", "hovertemplate": "Task 55
Start: 102177.0
End: 102180.0
Duration: 3.0
Accelerator: 0
", "line": { "color": "black", "width": 1 }, "name": "Task 55", "showlegend": false, "text": "Duration: 3.0", "type": "scatter", "x": [ 196, 199, 199, 196, 196 ], "xaxis": "x2", "y": [ 54.6, 54.6, 55.4, 55.4, 54.6 ], "yaxis": "y2" }, { "fill": "toself", "fillcolor": "rgb(220, 176, 242)", "hovertemplate": "Task 57
Start: 102185.0
End: 102185.0
Duration: 0.0
Accelerator: 0
", "line": { "color": "black", "width": 1 }, "name": "Task 57", "showlegend": false, "text": "Duration: 0.0", "type": "scatter", "x": [ 204, 204, 204, 204, 204 ], "xaxis": "x2", "y": [ 56.6, 56.6, 57.4, 57.4, 56.6 ], "yaxis": "y2" }, { "fill": "toself", "fillcolor": "rgb(135, 197, 95)", "hovertemplate": "Task 62
Start: 102185.0
End: 102186.0
Duration: 1.0
Accelerator: 4
", "line": { "color": "black", "width": 1 }, "name": "Task 62", "showlegend": false, "text": "Duration: 1.0", "type": "scatter", "x": [ 204, 205, 205, 204, 204 ], "xaxis": "x2", "y": [ 61.6, 61.6, 62.4, 62.4, 61.6 ], "yaxis": "y2" }, { "fill": "toself", "fillcolor": "rgb(158, 185, 243)", "hovertemplate": "Task 58
Start: 102185.0
End: 102187.0
Duration: 2.0
Accelerator: 0
", "line": { "color": "black", "width": 1 }, "name": "Task 58", "showlegend": false, "text": "Duration: 2.0", "type": "scatter", "x": [ 204, 206, 206, 204, 204 ], "xaxis": "x2", "y": [ 57.6, 57.6, 58.4, 58.4, 57.6 ], "yaxis": "y2" }, { "fill": "toself", "fillcolor": "rgb(254, 136, 177)", "hovertemplate": "Task 63
Start: 102186.0
End: 102188.0
Duration: 2.0
Accelerator: 4
", "line": { "color": "black", "width": 1 }, "name": "Task 63", "showlegend": false, "text": "Duration: 2.0", "type": "scatter", "x": [ 205, 207, 207, 205, 205 ], "xaxis": "x2", "y": [ 62.6, 62.6, 63.4, 63.4, 62.6 ], "yaxis": "y2" }, { "fill": "toself", "fillcolor": "rgb(201, 219, 116)", "hovertemplate": "Task 67
Start: 102187.0
End: 102188.0
Duration: 1.0
Accelerator: 0
", "line": { "color": "black", "width": 1 }, "name": "Task 67", "showlegend": false, "text": "Duration: 1.0", "type": "scatter", "x": [ 206, 207, 207, 206, 206 ], "xaxis": "x2", "y": [ 66.6, 66.6, 67.4, 67.4, 66.6 ], "yaxis": "y2" }, { "fill": "toself", "fillcolor": "rgb(139, 224, 164)", "hovertemplate": "Task 59
Start: 102188.0
End: 102189.0
Duration: 1.0
Accelerator: 0
", "line": { "color": "black", "width": 1 }, "name": "Task 59", "showlegend": false, "text": "Duration: 1.0", "type": "scatter", "x": [ 207, 208, 208, 207, 207 ], "xaxis": "x2", "y": [ 58.6, 58.6, 59.4, 59.4, 58.6 ], "yaxis": "y2" }, { "fill": "toself", "fillcolor": "rgb(180, 151, 231)", "hovertemplate": "Task 64
Start: 102188.0
End: 102197.0
Duration: 9.0
Accelerator: 4
", "line": { "color": "black", "width": 1 }, "name": "Task 64", "showlegend": false, "text": "Duration: 9.0", "type": "scatter", "x": [ 207, 216, 216, 207, 207 ], "xaxis": "x2", "y": [ 63.6, 63.6, 64.4, 64.4, 63.6 ], "yaxis": "y2" }, { "fill": "toself", "fillcolor": "rgb(179, 179, 179)", "hovertemplate": "Task 68
Start: 102189.0
End: 102190.0
Duration: 1.0
Accelerator: 0
", "line": { "color": "black", "width": 1 }, "name": "Task 68", "showlegend": false, "text": "Duration: 1.0", "type": "scatter", "x": [ 208, 209, 209, 208, 208 ], "xaxis": "x2", "y": [ 67.6, 67.6, 68.4, 68.4, 67.6 ], "yaxis": "y2" }, { "fill": "toself", "fillcolor": "rgb(102, 197, 204)", "hovertemplate": "Task 60
Start: 102190.0
End: 102192.0
Duration: 2.0
Accelerator: 0
", "line": { "color": "black", "width": 1 }, "name": "Task 60", "showlegend": false, "text": "Duration: 2.0", "type": "scatter", "x": [ 209, 211, 211, 209, 209 ], "xaxis": "x2", "y": [ 59.6, 59.6, 60.4, 60.4, 59.6 ], "yaxis": "y2" }, { "fill": "toself", "fillcolor": "rgb(246, 207, 113)", "hovertemplate": "Task 61
Start: 102192.0
End: 102194.0
Duration: 2.0
Accelerator: 0
", "line": { "color": "black", "width": 1 }, "name": "Task 61", "showlegend": false, "text": "Duration: 2.0", "type": "scatter", "x": [ 211, 213, 213, 211, 211 ], "xaxis": "x2", "y": [ 60.6, 60.6, 61.4, 61.4, 60.6 ], "yaxis": "y2" }, { "fill": "toself", "fillcolor": "rgb(248, 156, 116)", "hovertemplate": "Task 65
Start: 102197.0
End: 102199.0
Duration: 2.0
Accelerator: 0
", "line": { "color": "black", "width": 1 }, "name": "Task 65", "showlegend": false, "text": "Duration: 2.0", "type": "scatter", "x": [ 216, 218, 218, 216, 216 ], "xaxis": "x2", "y": [ 64.6, 64.6, 65.4, 65.4, 64.6 ], "yaxis": "y2" }, { "fill": "toself", "fillcolor": "rgb(220, 176, 242)", "hovertemplate": "Task 66
Start: 102199.0
End: 102201.0
Duration: 2.0
Accelerator: 0
", "line": { "color": "black", "width": 1 }, "name": "Task 66", "showlegend": false, "text": "Duration: 2.0", "type": "scatter", "x": [ 218, 220, 220, 218, 218 ], "xaxis": "x2", "y": [ 65.6, 65.6, 66.4, 66.4, 65.6 ], "yaxis": "y2" }, { "fill": "toself", "fillcolor": "rgb(135, 197, 95)", "hovertemplate": "Task 69
Start: 102201.0
End: 102202.0
Duration: 1.0
Accelerator: 0
", "line": { "color": "black", "width": 1 }, "name": "Task 69", "showlegend": false, "text": "Duration: 1.0", "type": "scatter", "x": [ 220, 221, 221, 220, 220 ], "xaxis": "x2", "y": [ 68.6, 68.6, 69.4, 69.4, 68.6 ], "yaxis": "y2" } ], "layout": { "annotations": [ { "font": { "size": 16 }, "showarrow": false, "text": "Task Schedule (Original)", "x": 0.5, "xanchor": "center", "xref": "paper", "y": 1, "yanchor": "bottom", "yref": "paper" }, { "font": { "size": 16 }, "showarrow": false, "text": "Simulation Results", "x": 0.5, "xanchor": "center", "xref": "paper", "y": 0.45, "yanchor": "bottom", "yref": "paper" } ], "height": 800, "showlegend": false, "template": { "data": { "bar": [ { "error_x": { "color": "#2a3f5f" }, "error_y": { "color": "#2a3f5f" }, "marker": { "line": { "color": "#E5ECF6", "width": 0.5 }, "pattern": { "fillmode": "overlay", "size": 10, "solidity": 0.2 } }, "type": "bar" } ], "barpolar": [ { "marker": { "line": { "color": "#E5ECF6", "width": 0.5 }, "pattern": { "fillmode": "overlay", "size": 10, "solidity": 0.2 } }, "type": "barpolar" } ], "carpet": [ { "aaxis": { "endlinecolor": "#2a3f5f", "gridcolor": "white", "linecolor": "white", "minorgridcolor": "white", "startlinecolor": "#2a3f5f" }, "baxis": { "endlinecolor": "#2a3f5f", "gridcolor": "white", "linecolor": "white", "minorgridcolor": "white", "startlinecolor": "#2a3f5f" }, "type": "carpet" } ], "choropleth": [ { "colorbar": { "outlinewidth": 0, "ticks": "" }, "type": "choropleth" } ], "contour": [ { "colorbar": { "outlinewidth": 0, "ticks": "" }, "colorscale": [ [ 0, "#0d0887" ], [ 0.1111111111111111, "#46039f" ], [ 0.2222222222222222, "#7201a8" ], [ 0.3333333333333333, "#9c179e" ], [ 0.4444444444444444, "#bd3786" ], [ 0.5555555555555556, "#d8576b" ], [ 0.6666666666666666, "#ed7953" ], [ 0.7777777777777778, "#fb9f3a" ], [ 0.8888888888888888, "#fdca26" ], [ 1, "#f0f921" ] ], "type": "contour" } ], "contourcarpet": [ { "colorbar": { "outlinewidth": 0, "ticks": "" }, "type": "contourcarpet" } ], "heatmap": [ { "colorbar": { "outlinewidth": 0, "ticks": "" }, "colorscale": [ [ 0, "#0d0887" ], [ 0.1111111111111111, "#46039f" ], [ 0.2222222222222222, "#7201a8" ], [ 0.3333333333333333, "#9c179e" ], [ 0.4444444444444444, "#bd3786" ], [ 0.5555555555555556, "#d8576b" ], [ 0.6666666666666666, "#ed7953" ], [ 0.7777777777777778, "#fb9f3a" ], [ 0.8888888888888888, "#fdca26" ], [ 1, "#f0f921" ] ], "type": "heatmap" } ], "histogram": [ { "marker": { "pattern": { "fillmode": "overlay", "size": 10, "solidity": 0.2 } }, "type": "histogram" } ], "histogram2d": [ { "colorbar": { "outlinewidth": 0, "ticks": "" }, "colorscale": [ [ 0, "#0d0887" ], [ 0.1111111111111111, "#46039f" ], [ 0.2222222222222222, "#7201a8" ], [ 0.3333333333333333, "#9c179e" ], [ 0.4444444444444444, "#bd3786" ], [ 0.5555555555555556, "#d8576b" ], [ 0.6666666666666666, "#ed7953" ], [ 0.7777777777777778, "#fb9f3a" ], [ 0.8888888888888888, "#fdca26" ], [ 1, "#f0f921" ] ], "type": "histogram2d" } ], "histogram2dcontour": [ { "colorbar": { "outlinewidth": 0, "ticks": "" }, "colorscale": [ [ 0, "#0d0887" ], [ 0.1111111111111111, "#46039f" ], [ 0.2222222222222222, "#7201a8" ], [ 0.3333333333333333, "#9c179e" ], [ 0.4444444444444444, "#bd3786" ], [ 0.5555555555555556, "#d8576b" ], [ 0.6666666666666666, "#ed7953" ], [ 0.7777777777777778, "#fb9f3a" ], [ 0.8888888888888888, "#fdca26" ], [ 1, "#f0f921" ] ], "type": "histogram2dcontour" } ], "mesh3d": [ { "colorbar": { "outlinewidth": 0, "ticks": "" }, "type": "mesh3d" } ], "parcoords": [ { "line": { "colorbar": { "outlinewidth": 0, "ticks": "" } }, "type": "parcoords" } ], "pie": [ { "automargin": true, "type": "pie" } ], "scatter": [ { "fillpattern": { "fillmode": "overlay", "size": 10, "solidity": 0.2 }, "type": "scatter" } ], "scatter3d": [ { "line": { "colorbar": { "outlinewidth": 0, "ticks": "" } }, "marker": { "colorbar": { "outlinewidth": 0, "ticks": "" } }, "type": "scatter3d" } ], "scattercarpet": [ { "marker": { "colorbar": { "outlinewidth": 0, "ticks": "" } }, "type": "scattercarpet" } ], "scattergeo": [ { "marker": { "colorbar": { "outlinewidth": 0, "ticks": "" } }, "type": "scattergeo" } ], "scattergl": [ { "marker": { "colorbar": { "outlinewidth": 0, "ticks": "" } }, "type": "scattergl" } ], "scattermap": [ { "marker": { "colorbar": { "outlinewidth": 0, "ticks": "" } }, "type": "scattermap" } ], "scattermapbox": [ { "marker": { "colorbar": { "outlinewidth": 0, "ticks": "" } }, "type": "scattermapbox" } ], "scatterpolar": [ { "marker": { "colorbar": { "outlinewidth": 0, "ticks": "" } }, "type": "scatterpolar" } ], "scatterpolargl": [ { "marker": { "colorbar": { "outlinewidth": 0, "ticks": "" } }, "type": "scatterpolargl" } ], "scatterternary": [ { "marker": { "colorbar": { "outlinewidth": 0, "ticks": "" } }, "type": "scatterternary" } ], "surface": [ { "colorbar": { "outlinewidth": 0, "ticks": "" }, "colorscale": [ [ 0, "#0d0887" ], [ 0.1111111111111111, "#46039f" ], [ 0.2222222222222222, "#7201a8" ], [ 0.3333333333333333, "#9c179e" ], [ 0.4444444444444444, "#bd3786" ], [ 0.5555555555555556, "#d8576b" ], [ 0.6666666666666666, "#ed7953" ], [ 0.7777777777777778, "#fb9f3a" ], [ 0.8888888888888888, "#fdca26" ], [ 1, "#f0f921" ] ], "type": "surface" } ], "table": [ { "cells": { "fill": { "color": "#EBF0F8" }, "line": { "color": "white" } }, "header": { "fill": { "color": "#C8D4E3" }, "line": { "color": "white" } }, "type": "table" } ] }, "layout": { "annotationdefaults": { "arrowcolor": "#2a3f5f", "arrowhead": 0, "arrowwidth": 1 }, "autotypenumbers": "strict", "coloraxis": { "colorbar": { "outlinewidth": 0, "ticks": "" } }, "colorscale": { "diverging": [ [ 0, "#8e0152" ], [ 0.1, "#c51b7d" ], [ 0.2, "#de77ae" ], [ 0.3, "#f1b6da" ], [ 0.4, "#fde0ef" ], [ 0.5, "#f7f7f7" ], [ 0.6, "#e6f5d0" ], [ 0.7, "#b8e186" ], [ 0.8, "#7fbc41" ], [ 0.9, "#4d9221" ], [ 1, "#276419" ] ], "sequential": [ [ 0, "#0d0887" ], [ 0.1111111111111111, "#46039f" ], [ 0.2222222222222222, "#7201a8" ], [ 0.3333333333333333, "#9c179e" ], [ 0.4444444444444444, "#bd3786" ], [ 0.5555555555555556, "#d8576b" ], [ 0.6666666666666666, "#ed7953" ], [ 0.7777777777777778, "#fb9f3a" ], [ 0.8888888888888888, "#fdca26" ], [ 1, "#f0f921" ] ], "sequentialminus": [ [ 0, "#0d0887" ], [ 0.1111111111111111, "#46039f" ], [ 0.2222222222222222, "#7201a8" ], [ 0.3333333333333333, "#9c179e" ], [ 0.4444444444444444, "#bd3786" ], [ 0.5555555555555556, "#d8576b" ], [ 0.6666666666666666, "#ed7953" ], [ 0.7777777777777778, "#fb9f3a" ], [ 0.8888888888888888, "#fdca26" ], [ 1, "#f0f921" ] ] }, "colorway": [ "#636efa", "#EF553B", "#00cc96", "#ab63fa", "#FFA15A", "#19d3f3", "#FF6692", "#B6E880", "#FF97FF", "#FECB52" ], "font": { "color": "#2a3f5f" }, "geo": { "bgcolor": "white", "lakecolor": "white", "landcolor": "#E5ECF6", "showlakes": true, "showland": true, "subunitcolor": "white" }, "hoverlabel": { "align": "left" }, "hovermode": "closest", "mapbox": { "style": "light" }, "paper_bgcolor": "white", "plot_bgcolor": "#E5ECF6", "polar": { "angularaxis": { "gridcolor": "white", "linecolor": "white", "ticks": "" }, "bgcolor": "#E5ECF6", "radialaxis": { "gridcolor": "white", "linecolor": "white", "ticks": "" } }, "scene": { "xaxis": { "backgroundcolor": "#E5ECF6", "gridcolor": "white", "gridwidth": 2, "linecolor": "white", "showbackground": true, "ticks": "", "zerolinecolor": "white" }, "yaxis": { "backgroundcolor": "#E5ECF6", "gridcolor": "white", "gridwidth": 2, "linecolor": "white", "showbackground": true, "ticks": "", "zerolinecolor": "white" }, "zaxis": { "backgroundcolor": "#E5ECF6", "gridcolor": "white", "gridwidth": 2, "linecolor": "white", "showbackground": true, "ticks": "", "zerolinecolor": "white" } }, "shapedefaults": { "line": { "color": "#2a3f5f" } }, "ternary": { "aaxis": { "gridcolor": "white", "linecolor": "white", "ticks": "" }, "baxis": { "gridcolor": "white", "linecolor": "white", "ticks": "" }, "bgcolor": "#E5ECF6", "caxis": { "gridcolor": "white", "linecolor": "white", "ticks": "" } }, "title": { "x": 0.05 }, "xaxis": { "automargin": true, "gridcolor": "white", "linecolor": "white", "ticks": "", "title": { "standoff": 15 }, "zerolinecolor": "white", "zerolinewidth": 2 }, "yaxis": { "automargin": true, "gridcolor": "white", "linecolor": "white", "ticks": "", "title": { "standoff": 15 }, "zerolinecolor": "white", "zerolinewidth": 2 } } }, "title": { "text": "Gantt Chart Comparison (Normalized Time)" }, "xaxis": { "anchor": "y", "domain": [ 0, 1 ], "title": { "text": "Normalized Time" } }, "xaxis2": { "anchor": "y2", "domain": [ 0, 1 ], "title": { "text": "Normalized Time" } }, "yaxis": { "anchor": "x", "domain": [ 0.55, 1 ], "title": { "text": "Task ID" } }, "yaxis2": { "anchor": "x2", "domain": [ 0, 0.45 ], "title": { "text": "Task ID" } } } } }, "metadata": {}, "output_type": "display_data" }, { "data": { "application/vnd.plotly.v1+json": { "config": { "plotlyServerURL": "https://plot.ly" }, "data": [ { "fill": "toself", "fillcolor": "rgb(141,211,199)", "hovertemplate": "Task 0
Scaled Start: 0.000
Scaled End: 0.003
Scaled Duration: 0.003
", "line": { "color": "black", "width": 1 }, "name": "Task 0", "showlegend": false, "type": "scatter", "x": [ 0, 0.0026666666666666666, 0.0026666666666666666, 0, 0 ], "xaxis": "x", "y": [ -0.4, -0.4, 0.4, 0.4, -0.4 ], "yaxis": "y" }, { "fill": "toself", "fillcolor": "rgb(255,255,179)", "hovertemplate": "Task 1
Scaled Start: 0.003
Scaled End: 0.013
Scaled Duration: 0.011
", "line": { "color": "black", "width": 1 }, "name": "Task 1", "showlegend": false, "type": "scatter", "x": [ 0.0026666666666666666, 0.013333333333333334, 0.013333333333333334, 0.0026666666666666666, 0.0026666666666666666 ], "xaxis": "x", "y": [ 0.6, 0.6, 1.4, 1.4, 0.6 ], "yaxis": "y" }, { "fill": "toself", "fillcolor": "rgb(190,186,218)", "hovertemplate": "Task 2
Scaled Start: 0.013
Scaled End: 0.032
Scaled Duration: 0.019
", "line": { "color": "black", "width": 1 }, "name": "Task 2", "showlegend": false, "type": "scatter", "x": [ 0.013333333333333334, 0.032, 0.032, 0.013333333333333334, 0.013333333333333334 ], "xaxis": "x", "y": [ 1.6, 1.6, 2.4, 2.4, 1.6 ], "yaxis": "y" }, { "fill": "toself", "fillcolor": "rgb(251,128,114)", "hovertemplate": "Task 3
Scaled Start: 0.032
Scaled End: 0.272
Scaled Duration: 0.240
", "line": { "color": "black", "width": 1 }, "name": "Task 3", "showlegend": false, "type": "scatter", "x": [ 0.032, 0.272, 0.272, 0.032, 0.032 ], "xaxis": "x", "y": [ 2.6, 2.6, 3.4, 3.4, 2.6 ], "yaxis": "y" }, { "fill": "toself", "fillcolor": "rgb(128,177,211)", "hovertemplate": "Task 4
Scaled Start: 0.259
Scaled End: 0.272
Scaled Duration: 0.013
", "line": { "color": "black", "width": 1 }, "name": "Task 4", "showlegend": false, "type": "scatter", "x": [ 0.25866666666666666, 0.272, 0.272, 0.25866666666666666, 0.25866666666666666 ], "xaxis": "x", "y": [ 3.6, 3.6, 4.4, 4.4, 3.6 ], "yaxis": "y" }, { "fill": "toself", "fillcolor": "rgb(253,180,98)", "hovertemplate": "Task 5
Scaled Start: 0.272
Scaled End: 0.272
Scaled Duration: 0.000
", "line": { "color": "black", "width": 1 }, "name": "Task 5", "showlegend": false, "type": "scatter", "x": [ 0.272, 0.272, 0.272, 0.272, 0.272 ], "xaxis": "x", "y": [ 4.6, 4.6, 5.4, 5.4, 4.6 ], "yaxis": "y" }, { "fill": "toself", "fillcolor": "rgb(179,222,105)", "hovertemplate": "Task 6
Scaled Start: 0.272
Scaled End: 0.512
Scaled Duration: 0.240
", "line": { "color": "black", "width": 1 }, "name": "Task 6", "showlegend": false, "type": "scatter", "x": [ 0.272, 0.512, 0.512, 0.272, 0.272 ], "xaxis": "x", "y": [ 5.6, 5.6, 6.4, 6.4, 5.6 ], "yaxis": "y" }, { "fill": "toself", "fillcolor": "rgb(252,205,229)", "hovertemplate": "Task 7
Scaled Start: 0.541
Scaled End: 0.555
Scaled Duration: 0.013
", "line": { "color": "black", "width": 1 }, "name": "Task 7", "showlegend": false, "type": "scatter", "x": [ 0.5413333333333333, 0.5546666666666666, 0.5546666666666666, 0.5413333333333333, 0.5413333333333333 ], "xaxis": "x", "y": [ 6.6, 6.6, 7.4, 7.4, 6.6 ], "yaxis": "y" }, { "fill": "toself", "fillcolor": "rgb(217,217,217)", "hovertemplate": "Task 8
Scaled Start: 0.272
Scaled End: 0.275
Scaled Duration: 0.003
", "line": { "color": "black", "width": 1 }, "name": "Task 8", "showlegend": false, "type": "scatter", "x": [ 0.272, 0.27466666666666667, 0.27466666666666667, 0.272, 0.272 ], "xaxis": "x", "y": [ 7.6, 7.6, 8.4, 8.4, 7.6 ], "yaxis": "y" }, { "fill": "toself", "fillcolor": "rgb(188,128,189)", "hovertemplate": "Task 9
Scaled Start: 0.275
Scaled End: 0.283
Scaled Duration: 0.008
", "line": { "color": "black", "width": 1 }, "name": "Task 9", "showlegend": false, "type": "scatter", "x": [ 0.27466666666666667, 0.2826666666666667, 0.2826666666666667, 0.27466666666666667, 0.27466666666666667 ], "xaxis": "x", "y": [ 8.6, 8.6, 9.4, 9.4, 8.6 ], "yaxis": "y" }, { "fill": "toself", "fillcolor": "rgb(204,235,197)", "hovertemplate": "Task 10
Scaled Start: 0.283
Scaled End: 0.528
Scaled Duration: 0.245
", "line": { "color": "black", "width": 1 }, "name": "Task 10", "showlegend": false, "type": "scatter", "x": [ 0.2826666666666667, 0.528, 0.528, 0.2826666666666667, 0.2826666666666667 ], "xaxis": "x", "y": [ 9.6, 9.6, 10.4, 10.4, 9.6 ], "yaxis": "y" }, { "fill": "toself", "fillcolor": "rgb(255,237,111)", "hovertemplate": "Task 11
Scaled Start: 0.528
Scaled End: 0.541
Scaled Duration: 0.013
", "line": { "color": "black", "width": 1 }, "name": "Task 11", "showlegend": false, "type": "scatter", "x": [ 0.528, 0.5413333333333333, 0.5413333333333333, 0.528, 0.528 ], "xaxis": "x", "y": [ 10.6, 10.6, 11.4, 11.4, 10.6 ], "yaxis": "y" }, { "fill": "toself", "fillcolor": "rgb(141,211,199)", "hovertemplate": "Task 12
Scaled Start: 0.555
Scaled End: 0.555
Scaled Duration: 0.000
", "line": { "color": "black", "width": 1 }, "name": "Task 12", "showlegend": false, "type": "scatter", "x": [ 0.5546666666666666, 0.5546666666666666, 0.5546666666666666, 0.5546666666666666, 0.5546666666666666 ], "xaxis": "x", "y": [ 11.6, 11.6, 12.4, 12.4, 11.6 ], "yaxis": "y" }, { "fill": "toself", "fillcolor": "rgb(255,255,179)", "hovertemplate": "Task 13
Scaled Start: 0.557
Scaled End: 0.576
Scaled Duration: 0.019
", "line": { "color": "black", "width": 1 }, "name": "Task 13", "showlegend": false, "type": "scatter", "x": [ 0.5573333333333333, 0.576, 0.576, 0.5573333333333333, 0.5573333333333333 ], "xaxis": "x", "y": [ 12.6, 12.6, 13.4, 13.4, 12.6 ], "yaxis": "y" }, { "fill": "toself", "fillcolor": "rgb(190,186,218)", "hovertemplate": "Task 14
Scaled Start: 0.555
Scaled End: 0.557
Scaled Duration: 0.003
", "line": { "color": "black", "width": 1 }, "name": "Task 14", "showlegend": false, "type": "scatter", "x": [ 0.5546666666666666, 0.5573333333333333, 0.5573333333333333, 0.5546666666666666, 0.5546666666666666 ], "xaxis": "x", "y": [ 13.6, 13.6, 14.4, 14.4, 13.6 ], "yaxis": "y" }, { "fill": "toself", "fillcolor": "rgb(251,128,114)", "hovertemplate": "Task 15
Scaled Start: 0.576
Scaled End: 0.576
Scaled Duration: 0.000
", "line": { "color": "black", "width": 1 }, "name": "Task 15", "showlegend": false, "type": "scatter", "x": [ 0.576, 0.576, 0.576, 0.576, 0.576 ], "xaxis": "x", "y": [ 14.6, 14.6, 15.4, 15.4, 14.6 ], "yaxis": "y" }, { "fill": "toself", "fillcolor": "rgb(128,177,211)", "hovertemplate": "Task 16
Scaled Start: 0.576
Scaled End: 0.664
Scaled Duration: 0.088
", "line": { "color": "black", "width": 1 }, "name": "Task 16", "showlegend": false, "type": "scatter", "x": [ 0.576, 0.664, 0.664, 0.576, 0.576 ], "xaxis": "x", "y": [ 15.6, 15.6, 16.4, 16.4, 15.6 ], "yaxis": "y" }, { "fill": "toself", "fillcolor": "rgb(253,180,98)", "hovertemplate": "Task 17
Scaled Start: 0.656
Scaled End: 0.659
Scaled Duration: 0.003
", "line": { "color": "black", "width": 1 }, "name": "Task 17", "showlegend": false, "type": "scatter", "x": [ 0.656, 0.6586666666666666, 0.6586666666666666, 0.656, 0.656 ], "xaxis": "x", "y": [ 16.6, 16.6, 17.4, 17.4, 16.6 ], "yaxis": "y" }, { "fill": "toself", "fillcolor": "rgb(179,222,105)", "hovertemplate": "Task 18
Scaled Start: 0.659
Scaled End: 0.664
Scaled Duration: 0.005
", "line": { "color": "black", "width": 1 }, "name": "Task 18", "showlegend": false, "type": "scatter", "x": [ 0.6586666666666666, 0.664, 0.664, 0.6586666666666666, 0.6586666666666666 ], "xaxis": "x", "y": [ 17.6, 17.6, 18.4, 18.4, 17.6 ], "yaxis": "y" }, { "fill": "toself", "fillcolor": "rgb(252,205,229)", "hovertemplate": "Task 19
Scaled Start: 0.643
Scaled End: 0.645
Scaled Duration: 0.003
", "line": { "color": "black", "width": 1 }, "name": "Task 19", "showlegend": false, "type": "scatter", "x": [ 0.6426666666666667, 0.6453333333333333, 0.6453333333333333, 0.6426666666666667, 0.6426666666666667 ], "xaxis": "x", "y": [ 18.6, 18.6, 19.4, 19.4, 18.6 ], "yaxis": "y" }, { "fill": "toself", "fillcolor": "rgb(217,217,217)", "hovertemplate": "Task 20
Scaled Start: 0.645
Scaled End: 0.651
Scaled Duration: 0.005
", "line": { "color": "black", "width": 1 }, "name": "Task 20", "showlegend": false, "type": "scatter", "x": [ 0.6453333333333333, 0.6506666666666666, 0.6506666666666666, 0.6453333333333333, 0.6453333333333333 ], "xaxis": "x", "y": [ 19.6, 19.6, 20.4, 20.4, 19.6 ], "yaxis": "y" }, { "fill": "toself", "fillcolor": "rgb(188,128,189)", "hovertemplate": "Task 21
Scaled Start: 0.651
Scaled End: 0.656
Scaled Duration: 0.005
", "line": { "color": "black", "width": 1 }, "name": "Task 21", "showlegend": false, "type": "scatter", "x": [ 0.6506666666666666, 0.656, 0.656, 0.6506666666666666, 0.6506666666666666 ], "xaxis": "x", "y": [ 20.6, 20.6, 21.4, 21.4, 20.6 ], "yaxis": "y" }, { "fill": "toself", "fillcolor": "rgb(204,235,197)", "hovertemplate": "Task 22
Scaled Start: 0.637
Scaled End: 0.640
Scaled Duration: 0.003
", "line": { "color": "black", "width": 1 }, "name": "Task 22", "showlegend": false, "type": "scatter", "x": [ 0.6373333333333333, 0.64, 0.64, 0.6373333333333333, 0.6373333333333333 ], "xaxis": "x", "y": [ 21.6, 21.6, 22.4, 22.4, 21.6 ], "yaxis": "y" }, { "fill": "toself", "fillcolor": "rgb(255,237,111)", "hovertemplate": "Task 23
Scaled Start: 0.640
Scaled End: 0.643
Scaled Duration: 0.003
", "line": { "color": "black", "width": 1 }, "name": "Task 23", "showlegend": false, "type": "scatter", "x": [ 0.64, 0.6426666666666667, 0.6426666666666667, 0.64, 0.64 ], "xaxis": "x", "y": [ 22.6, 22.6, 23.4, 23.4, 22.6 ], "yaxis": "y" }, { "fill": "toself", "fillcolor": "rgb(141,211,199)", "hovertemplate": "Task 24
Scaled Start: 0.664
Scaled End: 0.664
Scaled Duration: 0.000
", "line": { "color": "black", "width": 1 }, "name": "Task 24", "showlegend": false, "type": "scatter", "x": [ 0.664, 0.664, 0.664, 0.664, 0.664 ], "xaxis": "x", "y": [ 23.6, 23.6, 24.4, 24.4, 23.6 ], "yaxis": "y" }, { "fill": "toself", "fillcolor": "rgb(255,255,179)", "hovertemplate": "Task 25
Scaled Start: 0.691
Scaled End: 0.693
Scaled Duration: 0.003
", "line": { "color": "black", "width": 1 }, "name": "Task 25", "showlegend": false, "type": "scatter", "x": [ 0.6906666666666667, 0.6933333333333334, 0.6933333333333334, 0.6906666666666667, 0.6906666666666667 ], "xaxis": "x", "y": [ 24.6, 24.6, 25.4, 25.4, 24.6 ], "yaxis": "y" }, { "fill": "toself", "fillcolor": "rgb(190,186,218)", "hovertemplate": "Task 26
Scaled Start: 0.683
Scaled End: 0.685
Scaled Duration: 0.003
", "line": { "color": "black", "width": 1 }, "name": "Task 26", "showlegend": false, "type": "scatter", "x": [ 0.6826666666666666, 0.6853333333333333, 0.6853333333333333, 0.6826666666666666, 0.6826666666666666 ], "xaxis": "x", "y": [ 25.6, 25.6, 26.4, 26.4, 25.6 ], "yaxis": "y" }, { "fill": "toself", "fillcolor": "rgb(251,128,114)", "hovertemplate": "Task 27
Scaled Start: 0.685
Scaled End: 0.691
Scaled Duration: 0.005
", "line": { "color": "black", "width": 1 }, "name": "Task 27", "showlegend": false, "type": "scatter", "x": [ 0.6853333333333333, 0.6906666666666667, 0.6906666666666667, 0.6853333333333333, 0.6853333333333333 ], "xaxis": "x", "y": [ 26.6, 26.6, 27.4, 27.4, 26.6 ], "yaxis": "y" }, { "fill": "toself", "fillcolor": "rgb(128,177,211)", "hovertemplate": "Task 28
Scaled Start: 0.669
Scaled End: 0.672
Scaled Duration: 0.003
", "line": { "color": "black", "width": 1 }, "name": "Task 28", "showlegend": false, "type": "scatter", "x": [ 0.6693333333333333, 0.672, 0.672, 0.6693333333333333, 0.6693333333333333 ], "xaxis": "x", "y": [ 27.6, 27.6, 28.4, 28.4, 27.6 ], "yaxis": "y" }, { "fill": "toself", "fillcolor": "rgb(253,180,98)", "hovertemplate": "Task 29
Scaled Start: 0.672
Scaled End: 0.677
Scaled Duration: 0.005
", "line": { "color": "black", "width": 1 }, "name": "Task 29", "showlegend": false, "type": "scatter", "x": [ 0.672, 0.6773333333333333, 0.6773333333333333, 0.672, 0.672 ], "xaxis": "x", "y": [ 28.6, 28.6, 29.4, 29.4, 28.6 ], "yaxis": "y" }, { "fill": "toself", "fillcolor": "rgb(179,222,105)", "hovertemplate": "Task 30
Scaled Start: 0.677
Scaled End: 0.683
Scaled Duration: 0.005
", "line": { "color": "black", "width": 1 }, "name": "Task 30", "showlegend": false, "type": "scatter", "x": [ 0.6773333333333333, 0.6826666666666666, 0.6826666666666666, 0.6773333333333333, 0.6773333333333333 ], "xaxis": "x", "y": [ 29.6, 29.6, 30.4, 30.4, 29.6 ], "yaxis": "y" }, { "fill": "toself", "fillcolor": "rgb(252,205,229)", "hovertemplate": "Task 31
Scaled Start: 0.664
Scaled End: 0.667
Scaled Duration: 0.003
", "line": { "color": "black", "width": 1 }, "name": "Task 31", "showlegend": false, "type": "scatter", "x": [ 0.664, 0.6666666666666666, 0.6666666666666666, 0.664, 0.664 ], "xaxis": "x", "y": [ 30.6, 30.6, 31.4, 31.4, 30.6 ], "yaxis": "y" }, { "fill": "toself", "fillcolor": "rgb(217,217,217)", "hovertemplate": "Task 32
Scaled Start: 0.667
Scaled End: 0.669
Scaled Duration: 0.003
", "line": { "color": "black", "width": 1 }, "name": "Task 32", "showlegend": false, "type": "scatter", "x": [ 0.6666666666666666, 0.6693333333333333, 0.6693333333333333, 0.6666666666666666, 0.6666666666666666 ], "xaxis": "x", "y": [ 31.6, 31.6, 32.4, 32.4, 31.6 ], "yaxis": "y" }, { "fill": "toself", "fillcolor": "rgb(188,128,189)", "hovertemplate": "Task 33
Scaled Start: 0.693
Scaled End: 0.693
Scaled Duration: 0.000
", "line": { "color": "black", "width": 1 }, "name": "Task 33", "showlegend": false, "type": "scatter", "x": [ 0.6933333333333334, 0.6933333333333334, 0.6933333333333334, 0.6933333333333334, 0.6933333333333334 ], "xaxis": "x", "y": [ 32.6, 32.6, 33.4, 33.4, 32.6 ], "yaxis": "y" }, { "fill": "toself", "fillcolor": "rgb(204,235,197)", "hovertemplate": "Task 34
Scaled Start: 0.693
Scaled End: 0.781
Scaled Duration: 0.088
", "line": { "color": "black", "width": 1 }, "name": "Task 34", "showlegend": false, "type": "scatter", "x": [ 0.6933333333333334, 0.7813333333333333, 0.7813333333333333, 0.6933333333333334, 0.6933333333333334 ], "xaxis": "x", "y": [ 33.6, 33.6, 34.4, 34.4, 33.6 ], "yaxis": "y" }, { "fill": "toself", "fillcolor": "rgb(255,237,111)", "hovertemplate": "Task 35
Scaled Start: 0.773
Scaled End: 0.776
Scaled Duration: 0.003
", "line": { "color": "black", "width": 1 }, "name": "Task 35", "showlegend": false, "type": "scatter", "x": [ 0.7733333333333333, 0.776, 0.776, 0.7733333333333333, 0.7733333333333333 ], "xaxis": "x", "y": [ 34.6, 34.6, 35.4, 35.4, 34.6 ], "yaxis": "y" }, { "fill": "toself", "fillcolor": "rgb(141,211,199)", "hovertemplate": "Task 36
Scaled Start: 0.776
Scaled End: 0.781
Scaled Duration: 0.005
", "line": { "color": "black", "width": 1 }, "name": "Task 36", "showlegend": false, "type": "scatter", "x": [ 0.776, 0.7813333333333333, 0.7813333333333333, 0.776, 0.776 ], "xaxis": "x", "y": [ 35.6, 35.6, 36.4, 36.4, 35.6 ], "yaxis": "y" }, { "fill": "toself", "fillcolor": "rgb(255,255,179)", "hovertemplate": "Task 37
Scaled Start: 0.760
Scaled End: 0.763
Scaled Duration: 0.003
", "line": { "color": "black", "width": 1 }, "name": "Task 37", "showlegend": false, "type": "scatter", "x": [ 0.76, 0.7626666666666667, 0.7626666666666667, 0.76, 0.76 ], "xaxis": "x", "y": [ 36.6, 36.6, 37.4, 37.4, 36.6 ], "yaxis": "y" }, { "fill": "toself", "fillcolor": "rgb(190,186,218)", "hovertemplate": "Task 38
Scaled Start: 0.763
Scaled End: 0.768
Scaled Duration: 0.005
", "line": { "color": "black", "width": 1 }, "name": "Task 38", "showlegend": false, "type": "scatter", "x": [ 0.7626666666666667, 0.768, 0.768, 0.7626666666666667, 0.7626666666666667 ], "xaxis": "x", "y": [ 37.6, 37.6, 38.4, 38.4, 37.6 ], "yaxis": "y" }, { "fill": "toself", "fillcolor": "rgb(251,128,114)", "hovertemplate": "Task 39
Scaled Start: 0.768
Scaled End: 0.773
Scaled Duration: 0.005
", "line": { "color": "black", "width": 1 }, "name": "Task 39", "showlegend": false, "type": "scatter", "x": [ 0.768, 0.7733333333333333, 0.7733333333333333, 0.768, 0.768 ], "xaxis": "x", "y": [ 38.6, 38.6, 39.4, 39.4, 38.6 ], "yaxis": "y" }, { "fill": "toself", "fillcolor": "rgb(128,177,211)", "hovertemplate": "Task 40
Scaled Start: 0.755
Scaled End: 0.757
Scaled Duration: 0.003
", "line": { "color": "black", "width": 1 }, "name": "Task 40", "showlegend": false, "type": "scatter", "x": [ 0.7546666666666667, 0.7573333333333333, 0.7573333333333333, 0.7546666666666667, 0.7546666666666667 ], "xaxis": "x", "y": [ 39.6, 39.6, 40.4, 40.4, 39.6 ], "yaxis": "y" }, { "fill": "toself", "fillcolor": "rgb(253,180,98)", "hovertemplate": "Task 41
Scaled Start: 0.757
Scaled End: 0.760
Scaled Duration: 0.003
", "line": { "color": "black", "width": 1 }, "name": "Task 41", "showlegend": false, "type": "scatter", "x": [ 0.7573333333333333, 0.76, 0.76, 0.7573333333333333, 0.7573333333333333 ], "xaxis": "x", "y": [ 40.6, 40.6, 41.4, 41.4, 40.6 ], "yaxis": "y" }, { "fill": "toself", "fillcolor": "rgb(179,222,105)", "hovertemplate": "Task 42
Scaled Start: 0.781
Scaled End: 0.781
Scaled Duration: 0.000
", "line": { "color": "black", "width": 1 }, "name": "Task 42", "showlegend": false, "type": "scatter", "x": [ 0.7813333333333333, 0.7813333333333333, 0.7813333333333333, 0.7813333333333333, 0.7813333333333333 ], "xaxis": "x", "y": [ 41.6, 41.6, 42.4, 42.4, 41.6 ], "yaxis": "y" }, { "fill": "toself", "fillcolor": "rgb(252,205,229)", "hovertemplate": "Task 43
Scaled Start: 0.808
Scaled End: 0.811
Scaled Duration: 0.003
", "line": { "color": "black", "width": 1 }, "name": "Task 43", "showlegend": false, "type": "scatter", "x": [ 0.808, 0.8106666666666666, 0.8106666666666666, 0.808, 0.808 ], "xaxis": "x", "y": [ 42.6, 42.6, 43.4, 43.4, 42.6 ], "yaxis": "y" }, { "fill": "toself", "fillcolor": "rgb(217,217,217)", "hovertemplate": "Task 44
Scaled Start: 0.800
Scaled End: 0.803
Scaled Duration: 0.003
", "line": { "color": "black", "width": 1 }, "name": "Task 44", "showlegend": false, "type": "scatter", "x": [ 0.8, 0.8026666666666666, 0.8026666666666666, 0.8, 0.8 ], "xaxis": "x", "y": [ 43.6, 43.6, 44.4, 44.4, 43.6 ], "yaxis": "y" }, { "fill": "toself", "fillcolor": "rgb(188,128,189)", "hovertemplate": "Task 45
Scaled Start: 0.803
Scaled End: 0.808
Scaled Duration: 0.005
", "line": { "color": "black", "width": 1 }, "name": "Task 45", "showlegend": false, "type": "scatter", "x": [ 0.8026666666666666, 0.808, 0.808, 0.8026666666666666, 0.8026666666666666 ], "xaxis": "x", "y": [ 44.6, 44.6, 45.4, 45.4, 44.6 ], "yaxis": "y" }, { "fill": "toself", "fillcolor": "rgb(204,235,197)", "hovertemplate": "Task 46
Scaled Start: 0.787
Scaled End: 0.789
Scaled Duration: 0.003
", "line": { "color": "black", "width": 1 }, "name": "Task 46", "showlegend": false, "type": "scatter", "x": [ 0.7866666666666666, 0.7893333333333333, 0.7893333333333333, 0.7866666666666666, 0.7866666666666666 ], "xaxis": "x", "y": [ 45.6, 45.6, 46.4, 46.4, 45.6 ], "yaxis": "y" }, { "fill": "toself", "fillcolor": "rgb(255,237,111)", "hovertemplate": "Task 47
Scaled Start: 0.789
Scaled End: 0.795
Scaled Duration: 0.005
", "line": { "color": "black", "width": 1 }, "name": "Task 47", "showlegend": false, "type": "scatter", "x": [ 0.7893333333333333, 0.7946666666666666, 0.7946666666666666, 0.7893333333333333, 0.7893333333333333 ], "xaxis": "x", "y": [ 46.6, 46.6, 47.4, 47.4, 46.6 ], "yaxis": "y" }, { "fill": "toself", "fillcolor": "rgb(141,211,199)", "hovertemplate": "Task 48
Scaled Start: 0.795
Scaled End: 0.800
Scaled Duration: 0.005
", "line": { "color": "black", "width": 1 }, "name": "Task 48", "showlegend": false, "type": "scatter", "x": [ 0.7946666666666666, 0.8, 0.8, 0.7946666666666666, 0.7946666666666666 ], "xaxis": "x", "y": [ 47.6, 47.6, 48.4, 48.4, 47.6 ], "yaxis": "y" }, { "fill": "toself", "fillcolor": "rgb(255,255,179)", "hovertemplate": "Task 49
Scaled Start: 0.781
Scaled End: 0.784
Scaled Duration: 0.003
", "line": { "color": "black", "width": 1 }, "name": "Task 49", "showlegend": false, "type": "scatter", "x": [ 0.7813333333333333, 0.784, 0.784, 0.7813333333333333, 0.7813333333333333 ], "xaxis": "x", "y": [ 48.6, 48.6, 49.4, 49.4, 48.6 ], "yaxis": "y" }, { "fill": "toself", "fillcolor": "rgb(190,186,218)", "hovertemplate": "Task 50
Scaled Start: 0.784
Scaled End: 0.787
Scaled Duration: 0.003
", "line": { "color": "black", "width": 1 }, "name": "Task 50", "showlegend": false, "type": "scatter", "x": [ 0.784, 0.7866666666666666, 0.7866666666666666, 0.784, 0.784 ], "xaxis": "x", "y": [ 49.6, 49.6, 50.4, 50.4, 49.6 ], "yaxis": "y" }, { "fill": "toself", "fillcolor": "rgb(251,128,114)", "hovertemplate": "Task 51
Scaled Start: 0.811
Scaled End: 0.811
Scaled Duration: 0.000
", "line": { "color": "black", "width": 1 }, "name": "Task 51", "showlegend": false, "type": "scatter", "x": [ 0.8106666666666666, 0.8106666666666666, 0.8106666666666666, 0.8106666666666666, 0.8106666666666666 ], "xaxis": "x", "y": [ 50.6, 50.6, 51.4, 51.4, 50.6 ], "yaxis": "y" }, { "fill": "toself", "fillcolor": "rgb(128,177,211)", "hovertemplate": "Task 52
Scaled Start: 0.811
Scaled End: 0.909
Scaled Duration: 0.099
", "line": { "color": "black", "width": 1 }, "name": "Task 52", "showlegend": false, "type": "scatter", "x": [ 0.8106666666666666, 0.9093333333333333, 0.9093333333333333, 0.8106666666666666, 0.8106666666666666 ], "xaxis": "x", "y": [ 51.6, 51.6, 52.4, 52.4, 51.6 ], "yaxis": "y" }, { "fill": "toself", "fillcolor": "rgb(253,180,98)", "hovertemplate": "Task 53
Scaled Start: 0.813
Scaled End: 0.819
Scaled Duration: 0.005
", "line": { "color": "black", "width": 1 }, "name": "Task 53", "showlegend": false, "type": "scatter", "x": [ 0.8133333333333334, 0.8186666666666667, 0.8186666666666667, 0.8133333333333334, 0.8133333333333334 ], "xaxis": "x", "y": [ 52.6, 52.6, 53.4, 53.4, 52.6 ], "yaxis": "y" }, { "fill": "toself", "fillcolor": "rgb(179,222,105)", "hovertemplate": "Task 54
Scaled Start: 0.819
Scaled End: 0.840
Scaled Duration: 0.021
", "line": { "color": "black", "width": 1 }, "name": "Task 54", "showlegend": false, "type": "scatter", "x": [ 0.8186666666666667, 0.84, 0.84, 0.8186666666666667, 0.8186666666666667 ], "xaxis": "x", "y": [ 53.6, 53.6, 54.4, 54.4, 53.6 ], "yaxis": "y" }, { "fill": "toself", "fillcolor": "rgb(252,205,229)", "hovertemplate": "Task 55
Scaled Start: 0.840
Scaled End: 0.848
Scaled Duration: 0.008
", "line": { "color": "black", "width": 1 }, "name": "Task 55", "showlegend": false, "type": "scatter", "x": [ 0.84, 0.848, 0.848, 0.84, 0.84 ], "xaxis": "x", "y": [ 54.6, 54.6, 55.4, 55.4, 54.6 ], "yaxis": "y" }, { "fill": "toself", "fillcolor": "rgb(217,217,217)", "hovertemplate": "Task 56
Scaled Start: 0.811
Scaled End: 0.813
Scaled Duration: 0.003
", "line": { "color": "black", "width": 1 }, "name": "Task 56", "showlegend": false, "type": "scatter", "x": [ 0.8106666666666666, 0.8133333333333334, 0.8133333333333334, 0.8106666666666666, 0.8106666666666666 ], "xaxis": "x", "y": [ 55.6, 55.6, 56.4, 56.4, 55.6 ], "yaxis": "y" }, { "fill": "toself", "fillcolor": "rgb(188,128,189)", "hovertemplate": "Task 57
Scaled Start: 0.909
Scaled End: 0.909
Scaled Duration: 0.000
", "line": { "color": "black", "width": 1 }, "name": "Task 57", "showlegend": false, "type": "scatter", "x": [ 0.9093333333333333, 0.9093333333333333, 0.9093333333333333, 0.9093333333333333, 0.9093333333333333 ], "xaxis": "x", "y": [ 56.6, 56.6, 57.4, 57.4, 56.6 ], "yaxis": "y" }, { "fill": "toself", "fillcolor": "rgb(204,235,197)", "hovertemplate": "Task 58
Scaled Start: 0.992
Scaled End: 0.997
Scaled Duration: 0.005
", "line": { "color": "black", "width": 1 }, "name": "Task 58", "showlegend": false, "type": "scatter", "x": [ 0.992, 0.9973333333333333, 0.9973333333333333, 0.992, 0.992 ], "xaxis": "x", "y": [ 57.6, 57.6, 58.4, 58.4, 57.6 ], "yaxis": "y" }, { "fill": "toself", "fillcolor": "rgb(255,237,111)", "hovertemplate": "Task 59
Scaled Start: 0.979
Scaled End: 0.981
Scaled Duration: 0.003
", "line": { "color": "black", "width": 1 }, "name": "Task 59", "showlegend": false, "type": "scatter", "x": [ 0.9786666666666667, 0.9813333333333333, 0.9813333333333333, 0.9786666666666667, 0.9786666666666667 ], "xaxis": "x", "y": [ 58.6, 58.6, 59.4, 59.4, 58.6 ], "yaxis": "y" }, { "fill": "toself", "fillcolor": "rgb(141,211,199)", "hovertemplate": "Task 60
Scaled Start: 0.981
Scaled End: 0.987
Scaled Duration: 0.005
", "line": { "color": "black", "width": 1 }, "name": "Task 60", "showlegend": false, "type": "scatter", "x": [ 0.9813333333333333, 0.9866666666666667, 0.9866666666666667, 0.9813333333333333, 0.9813333333333333 ], "xaxis": "x", "y": [ 59.6, 59.6, 60.4, 60.4, 59.6 ], "yaxis": "y" }, { "fill": "toself", "fillcolor": "rgb(255,255,179)", "hovertemplate": "Task 61
Scaled Start: 0.987
Scaled End: 0.992
Scaled Duration: 0.005
", "line": { "color": "black", "width": 1 }, "name": "Task 61", "showlegend": false, "type": "scatter", "x": [ 0.9866666666666667, 0.992, 0.992, 0.9866666666666667, 0.9866666666666667 ], "xaxis": "x", "y": [ 60.6, 60.6, 61.4, 61.4, 60.6 ], "yaxis": "y" }, { "fill": "toself", "fillcolor": "rgb(190,186,218)", "hovertemplate": "Task 62
Scaled Start: 0.909
Scaled End: 0.912
Scaled Duration: 0.003
", "line": { "color": "black", "width": 1 }, "name": "Task 62", "showlegend": false, "type": "scatter", "x": [ 0.9093333333333333, 0.912, 0.912, 0.9093333333333333, 0.9093333333333333 ], "xaxis": "x", "y": [ 61.6, 61.6, 62.4, 62.4, 61.6 ], "yaxis": "y" }, { "fill": "toself", "fillcolor": "rgb(251,128,114)", "hovertemplate": "Task 63
Scaled Start: 0.912
Scaled End: 0.917
Scaled Duration: 0.005
", "line": { "color": "black", "width": 1 }, "name": "Task 63", "showlegend": false, "type": "scatter", "x": [ 0.912, 0.9173333333333333, 0.9173333333333333, 0.912, 0.912 ], "xaxis": "x", "y": [ 62.6, 62.6, 63.4, 63.4, 62.6 ], "yaxis": "y" }, { "fill": "toself", "fillcolor": "rgb(128,177,211)", "hovertemplate": "Task 64
Scaled Start: 0.917
Scaled End: 0.968
Scaled Duration: 0.051
", "line": { "color": "black", "width": 1 }, "name": "Task 64", "showlegend": false, "type": "scatter", "x": [ 0.9173333333333333, 0.968, 0.968, 0.9173333333333333, 0.9173333333333333 ], "xaxis": "x", "y": [ 63.6, 63.6, 64.4, 64.4, 63.6 ], "yaxis": "y" }, { "fill": "toself", "fillcolor": "rgb(253,180,98)", "hovertemplate": "Task 65
Scaled Start: 0.968
Scaled End: 0.973
Scaled Duration: 0.005
", "line": { "color": "black", "width": 1 }, "name": "Task 65", "showlegend": false, "type": "scatter", "x": [ 0.968, 0.9733333333333334, 0.9733333333333334, 0.968, 0.968 ], "xaxis": "x", "y": [ 64.6, 64.6, 65.4, 65.4, 64.6 ], "yaxis": "y" }, { "fill": "toself", "fillcolor": "rgb(179,222,105)", "hovertemplate": "Task 66
Scaled Start: 0.973
Scaled End: 0.979
Scaled Duration: 0.005
", "line": { "color": "black", "width": 1 }, "name": "Task 66", "showlegend": false, "type": "scatter", "x": [ 0.9733333333333334, 0.9786666666666667, 0.9786666666666667, 0.9733333333333334, 0.9733333333333334 ], "xaxis": "x", "y": [ 65.6, 65.6, 66.4, 66.4, 65.6 ], "yaxis": "y" }, { "fill": "toself", "fillcolor": "rgb(252,205,229)", "hovertemplate": "Task 67
Scaled Start: 0.909
Scaled End: 0.912
Scaled Duration: 0.003
", "line": { "color": "black", "width": 1 }, "name": "Task 67", "showlegend": false, "type": "scatter", "x": [ 0.9093333333333333, 0.912, 0.912, 0.9093333333333333, 0.9093333333333333 ], "xaxis": "x", "y": [ 66.6, 66.6, 67.4, 67.4, 66.6 ], "yaxis": "y" }, { "fill": "toself", "fillcolor": "rgb(217,217,217)", "hovertemplate": "Task 68
Scaled Start: 0.912
Scaled End: 0.915
Scaled Duration: 0.003
", "line": { "color": "black", "width": 1 }, "name": "Task 68", "showlegend": false, "type": "scatter", "x": [ 0.912, 0.9146666666666666, 0.9146666666666666, 0.912, 0.912 ], "xaxis": "x", "y": [ 67.6, 67.6, 68.4, 68.4, 67.6 ], "yaxis": "y" }, { "fill": "toself", "fillcolor": "rgb(188,128,189)", "hovertemplate": "Task 69
Scaled Start: 0.997
Scaled End: 1.000
Scaled Duration: 0.003
", "line": { "color": "black", "width": 1 }, "name": "Task 69", "showlegend": false, "type": "scatter", "x": [ 0.9973333333333333, 1, 1, 0.9973333333333333, 0.9973333333333333 ], "xaxis": "x", "y": [ 68.6, 68.6, 69.4, 69.4, 68.6 ], "yaxis": "y" }, { "fill": "toself", "fillcolor": "rgb(102, 197, 204)", "hovertemplate": "Task 70
Scaled Start: 0.000
Scaled End: 0.000
Scaled Duration: 0.000
Accelerator: 10
", "line": { "color": "black", "width": 1 }, "name": "Task 70", "showlegend": false, "type": "scatter", "x": [ 0, 0, 0, 0, 0 ], "xaxis": "x2", "y": [ 69.6, 69.6, 70.4, 70.4, 69.6 ], "yaxis": "y2" }, { "fill": "toself", "fillcolor": "rgb(246, 207, 113)", "hovertemplate": "Task 0
Scaled Start: 0.000
Scaled End: 0.005
Scaled Duration: 0.005
Accelerator: 10
", "line": { "color": "black", "width": 1 }, "name": "Task 0", "showlegend": false, "type": "scatter", "x": [ 0, 0.004524886877828055, 0.004524886877828055, 0, 0 ], "xaxis": "x2", "y": [ -0.4, -0.4, 0.4, 0.4, -0.4 ], "yaxis": "y2" }, { "fill": "toself", "fillcolor": "rgb(248, 156, 116)", "hovertemplate": "Task 1
Scaled Start: 0.005
Scaled End: 0.023
Scaled Duration: 0.018
Accelerator: 10
", "line": { "color": "black", "width": 1 }, "name": "Task 1", "showlegend": false, "type": "scatter", "x": [ 0.004524886877828055, 0.02262443438914027, 0.02262443438914027, 0.004524886877828055, 0.004524886877828055 ], "xaxis": "x2", "y": [ 0.6, 0.6, 1.4, 1.4, 0.6 ], "yaxis": "y2" }, { "fill": "toself", "fillcolor": "rgb(220, 176, 242)", "hovertemplate": "Task 2
Scaled Start: 0.023
Scaled End: 0.054
Scaled Duration: 0.032
Accelerator: 10
", "line": { "color": "black", "width": 1 }, "name": "Task 2", "showlegend": false, "type": "scatter", "x": [ 0.02262443438914027, 0.05429864253393665, 0.05429864253393665, 0.02262443438914027, 0.02262443438914027 ], "xaxis": "x2", "y": [ 1.6, 1.6, 2.4, 2.4, 1.6 ], "yaxis": "y2" }, { "fill": "toself", "fillcolor": "rgb(135, 197, 95)", "hovertemplate": "Task 4
Scaled Start: 0.054
Scaled End: 0.077
Scaled Duration: 0.023
Accelerator: 6
", "line": { "color": "black", "width": 1 }, "name": "Task 4", "showlegend": false, "type": "scatter", "x": [ 0.05429864253393665, 0.07692307692307693, 0.07692307692307693, 0.05429864253393665, 0.05429864253393665 ], "xaxis": "x2", "y": [ 3.6, 3.6, 4.4, 4.4, 3.6 ], "yaxis": "y2" }, { "fill": "toself", "fillcolor": "rgb(158, 185, 243)", "hovertemplate": "Task 3
Scaled Start: 0.054
Scaled End: 0.222
Scaled Duration: 0.167
Accelerator: 10
", "line": { "color": "black", "width": 1 }, "name": "Task 3", "showlegend": false, "type": "scatter", "x": [ 0.05429864253393665, 0.22171945701357465, 0.22171945701357465, 0.05429864253393665, 0.05429864253393665 ], "xaxis": "x2", "y": [ 2.6, 2.6, 3.4, 3.4, 2.6 ], "yaxis": "y2" }, { "fill": "toself", "fillcolor": "rgb(254, 136, 177)", "hovertemplate": "Task 5
Scaled Start: 0.222
Scaled End: 0.222
Scaled Duration: 0.000
Accelerator: 6
", "line": { "color": "black", "width": 1 }, "name": "Task 5", "showlegend": false, "type": "scatter", "x": [ 0.22171945701357465, 0.22171945701357465, 0.22171945701357465, 0.22171945701357465, 0.22171945701357465 ], "xaxis": "x2", "y": [ 4.6, 4.6, 5.4, 5.4, 4.6 ], "yaxis": "y2" }, { "fill": "toself", "fillcolor": "rgb(201, 219, 116)", "hovertemplate": "Task 8
Scaled Start: 0.222
Scaled End: 0.226
Scaled Duration: 0.005
Accelerator: 7
", "line": { "color": "black", "width": 1 }, "name": "Task 8", "showlegend": false, "type": "scatter", "x": [ 0.22171945701357465, 0.22624434389140272, 0.22624434389140272, 0.22171945701357465, 0.22171945701357465 ], "xaxis": "x2", "y": [ 7.6, 7.6, 8.4, 8.4, 7.6 ], "yaxis": "y2" }, { "fill": "toself", "fillcolor": "rgb(139, 224, 164)", "hovertemplate": "Task 6
Scaled Start: 0.222
Scaled End: 0.552
Scaled Duration: 0.330
Accelerator: 6
", "line": { "color": "black", "width": 1 }, "name": "Task 6", "showlegend": false, "type": "scatter", "x": [ 0.22171945701357465, 0.5520361990950227, 0.5520361990950227, 0.22171945701357465, 0.22171945701357465 ], "xaxis": "x2", "y": [ 5.6, 5.6, 6.4, 6.4, 5.6 ], "yaxis": "y2" }, { "fill": "toself", "fillcolor": "rgb(180, 151, 231)", "hovertemplate": "Task 9
Scaled Start: 0.226
Scaled End: 0.240
Scaled Duration: 0.014
Accelerator: 7
", "line": { "color": "black", "width": 1 }, "name": "Task 9", "showlegend": false, "type": "scatter", "x": [ 0.22624434389140272, 0.2398190045248869, 0.2398190045248869, 0.22624434389140272, 0.22624434389140272 ], "xaxis": "x2", "y": [ 8.6, 8.6, 9.4, 9.4, 8.6 ], "yaxis": "y2" }, { "fill": "toself", "fillcolor": "rgb(179, 179, 179)", "hovertemplate": "Task 10
Scaled Start: 0.240
Scaled End: 0.416
Scaled Duration: 0.176
Accelerator: 7
", "line": { "color": "black", "width": 1 }, "name": "Task 10", "showlegend": false, "type": "scatter", "x": [ 0.2398190045248869, 0.416289592760181, 0.416289592760181, 0.2398190045248869, 0.2398190045248869 ], "xaxis": "x2", "y": [ 9.6, 9.6, 10.4, 10.4, 9.6 ], "yaxis": "y2" }, { "fill": "toself", "fillcolor": "rgb(102, 197, 204)", "hovertemplate": "Task 11
Scaled Start: 0.416
Scaled End: 0.439
Scaled Duration: 0.023
Accelerator: 3
", "line": { "color": "black", "width": 1 }, "name": "Task 11", "showlegend": false, "type": "scatter", "x": [ 0.416289592760181, 0.43891402714932126, 0.43891402714932126, 0.416289592760181, 0.416289592760181 ], "xaxis": "x2", "y": [ 10.6, 10.6, 11.4, 11.4, 10.6 ], "yaxis": "y2" }, { "fill": "toself", "fillcolor": "rgb(246, 207, 113)", "hovertemplate": "Task 7
Scaled Start: 0.552
Scaled End: 0.575
Scaled Duration: 0.023
Accelerator: 3
", "line": { "color": "black", "width": 1 }, "name": "Task 7", "showlegend": false, "type": "scatter", "x": [ 0.5520361990950227, 0.5746606334841629, 0.5746606334841629, 0.5520361990950227, 0.5520361990950227 ], "xaxis": "x2", "y": [ 6.6, 6.6, 7.4, 7.4, 6.6 ], "yaxis": "y2" }, { "fill": "toself", "fillcolor": "rgb(248, 156, 116)", "hovertemplate": "Task 12
Scaled Start: 0.575
Scaled End: 0.575
Scaled Duration: 0.000
Accelerator: 3
", "line": { "color": "black", "width": 1 }, "name": "Task 12", "showlegend": false, "type": "scatter", "x": [ 0.5746606334841629, 0.5746606334841629, 0.5746606334841629, 0.5746606334841629, 0.5746606334841629 ], "xaxis": "x2", "y": [ 11.6, 11.6, 12.4, 12.4, 11.6 ], "yaxis": "y2" }, { "fill": "toself", "fillcolor": "rgb(220, 176, 242)", "hovertemplate": "Task 13
Scaled Start: 0.575
Scaled End: 0.606
Scaled Duration: 0.032
Accelerator: 3
", "line": { "color": "black", "width": 1 }, "name": "Task 13", "showlegend": false, "type": "scatter", "x": [ 0.5746606334841629, 0.6063348416289592, 0.6063348416289592, 0.5746606334841629, 0.5746606334841629 ], "xaxis": "x2", "y": [ 12.6, 12.6, 13.4, 13.4, 12.6 ], "yaxis": "y2" }, { "fill": "toself", "fillcolor": "rgb(135, 197, 95)", "hovertemplate": "Task 14
Scaled Start: 0.606
Scaled End: 0.611
Scaled Duration: 0.005
Accelerator: 3
", "line": { "color": "black", "width": 1 }, "name": "Task 14", "showlegend": false, "type": "scatter", "x": [ 0.6063348416289592, 0.6108597285067874, 0.6108597285067874, 0.6063348416289592, 0.6063348416289592 ], "xaxis": "x2", "y": [ 13.6, 13.6, 14.4, 14.4, 13.6 ], "yaxis": "y2" }, { "fill": "toself", "fillcolor": "rgb(158, 185, 243)", "hovertemplate": "Task 15
Scaled Start: 0.611
Scaled End: 0.611
Scaled Duration: 0.000
Accelerator: 3
", "line": { "color": "black", "width": 1 }, "name": "Task 15", "showlegend": false, "type": "scatter", "x": [ 0.6108597285067874, 0.6108597285067874, 0.6108597285067874, 0.6108597285067874, 0.6108597285067874 ], "xaxis": "x2", "y": [ 14.6, 14.6, 15.4, 15.4, 14.6 ], "yaxis": "y2" }, { "fill": "toself", "fillcolor": "rgb(254, 136, 177)", "hovertemplate": "Task 17
Scaled Start: 0.611
Scaled End: 0.615
Scaled Duration: 0.005
Accelerator: 2
", "line": { "color": "black", "width": 1 }, "name": "Task 17", "showlegend": false, "type": "scatter", "x": [ 0.6108597285067874, 0.6153846153846154, 0.6153846153846154, 0.6108597285067874, 0.6108597285067874 ], "xaxis": "x2", "y": [ 16.6, 16.6, 17.4, 17.4, 16.6 ], "yaxis": "y2" }, { "fill": "toself", "fillcolor": "rgb(201, 219, 116)", "hovertemplate": "Task 16
Scaled Start: 0.611
Scaled End: 0.674
Scaled Duration: 0.063
Accelerator: 3
", "line": { "color": "black", "width": 1 }, "name": "Task 16", "showlegend": false, "type": "scatter", "x": [ 0.6108597285067874, 0.6742081447963801, 0.6742081447963801, 0.6108597285067874, 0.6108597285067874 ], "xaxis": "x2", "y": [ 15.6, 15.6, 16.4, 16.4, 15.6 ], "yaxis": "y2" }, { "fill": "toself", "fillcolor": "rgb(139, 224, 164)", "hovertemplate": "Task 22
Scaled Start: 0.615
Scaled End: 0.620
Scaled Duration: 0.005
Accelerator: 2
", "line": { "color": "black", "width": 1 }, "name": "Task 22", "showlegend": false, "type": "scatter", "x": [ 0.6153846153846154, 0.6199095022624435, 0.6199095022624435, 0.6153846153846154, 0.6153846153846154 ], "xaxis": "x2", "y": [ 21.6, 21.6, 22.4, 22.4, 21.6 ], "yaxis": "y2" }, { "fill": "toself", "fillcolor": "rgb(180, 151, 231)", "hovertemplate": "Task 18
Scaled Start: 0.620
Scaled End: 0.629
Scaled Duration: 0.009
Accelerator: 2
", "line": { "color": "black", "width": 1 }, "name": "Task 18", "showlegend": false, "type": "scatter", "x": [ 0.6199095022624435, 0.6289592760180995, 0.6289592760180995, 0.6199095022624435, 0.6199095022624435 ], "xaxis": "x2", "y": [ 17.6, 17.6, 18.4, 18.4, 17.6 ], "yaxis": "y2" }, { "fill": "toself", "fillcolor": "rgb(179, 179, 179)", "hovertemplate": "Task 23
Scaled Start: 0.629
Scaled End: 0.633
Scaled Duration: 0.005
Accelerator: 2
", "line": { "color": "black", "width": 1 }, "name": "Task 23", "showlegend": false, "type": "scatter", "x": [ 0.6289592760180995, 0.6334841628959276, 0.6334841628959276, 0.6289592760180995, 0.6289592760180995 ], "xaxis": "x2", "y": [ 22.6, 22.6, 23.4, 23.4, 22.6 ], "yaxis": "y2" }, { "fill": "toself", "fillcolor": "rgb(102, 197, 204)", "hovertemplate": "Task 19
Scaled Start: 0.633
Scaled End: 0.638
Scaled Duration: 0.005
Accelerator: 2
", "line": { "color": "black", "width": 1 }, "name": "Task 19", "showlegend": false, "type": "scatter", "x": [ 0.6334841628959276, 0.6380090497737556, 0.6380090497737556, 0.6334841628959276, 0.6334841628959276 ], "xaxis": "x2", "y": [ 18.6, 18.6, 19.4, 19.4, 18.6 ], "yaxis": "y2" }, { "fill": "toself", "fillcolor": "rgb(246, 207, 113)", "hovertemplate": "Task 20
Scaled Start: 0.638
Scaled End: 0.647
Scaled Duration: 0.009
Accelerator: 2
", "line": { "color": "black", "width": 1 }, "name": "Task 20", "showlegend": false, "type": "scatter", "x": [ 0.6380090497737556, 0.6470588235294118, 0.6470588235294118, 0.6380090497737556, 0.6380090497737556 ], "xaxis": "x2", "y": [ 19.6, 19.6, 20.4, 20.4, 19.6 ], "yaxis": "y2" }, { "fill": "toself", "fillcolor": "rgb(248, 156, 116)", "hovertemplate": "Task 21
Scaled Start: 0.647
Scaled End: 0.656
Scaled Duration: 0.009
Accelerator: 2
", "line": { "color": "black", "width": 1 }, "name": "Task 21", "showlegend": false, "type": "scatter", "x": [ 0.6470588235294118, 0.6561085972850679, 0.6561085972850679, 0.6470588235294118, 0.6470588235294118 ], "xaxis": "x2", "y": [ 20.6, 20.6, 21.4, 21.4, 20.6 ], "yaxis": "y2" }, { "fill": "toself", "fillcolor": "rgb(220, 176, 242)", "hovertemplate": "Task 24
Scaled Start: 0.674
Scaled End: 0.674
Scaled Duration: 0.000
Accelerator: 2
", "line": { "color": "black", "width": 1 }, "name": "Task 24", "showlegend": false, "type": "scatter", "x": [ 0.6742081447963801, 0.6742081447963801, 0.6742081447963801, 0.6742081447963801, 0.6742081447963801 ], "xaxis": "x2", "y": [ 23.6, 23.6, 24.4, 24.4, 23.6 ], "yaxis": "y2" }, { "fill": "toself", "fillcolor": "rgb(135, 197, 95)", "hovertemplate": "Task 25
Scaled Start: 0.674
Scaled End: 0.679
Scaled Duration: 0.005
Accelerator: 2
", "line": { "color": "black", "width": 1 }, "name": "Task 25", "showlegend": false, "type": "scatter", "x": [ 0.6742081447963801, 0.6787330316742082, 0.6787330316742082, 0.6742081447963801, 0.6742081447963801 ], "xaxis": "x2", "y": [ 24.6, 24.6, 25.4, 25.4, 24.6 ], "yaxis": "y2" }, { "fill": "toself", "fillcolor": "rgb(158, 185, 243)", "hovertemplate": "Task 31
Scaled Start: 0.679
Scaled End: 0.683
Scaled Duration: 0.005
Accelerator: 2
", "line": { "color": "black", "width": 1 }, "name": "Task 31", "showlegend": false, "type": "scatter", "x": [ 0.6787330316742082, 0.6832579185520362, 0.6832579185520362, 0.6787330316742082, 0.6787330316742082 ], "xaxis": "x2", "y": [ 30.6, 30.6, 31.4, 31.4, 30.6 ], "yaxis": "y2" }, { "fill": "toself", "fillcolor": "rgb(254, 136, 177)", "hovertemplate": "Task 28
Scaled Start: 0.683
Scaled End: 0.688
Scaled Duration: 0.005
Accelerator: 2
", "line": { "color": "black", "width": 1 }, "name": "Task 28", "showlegend": false, "type": "scatter", "x": [ 0.6832579185520362, 0.6877828054298643, 0.6877828054298643, 0.6832579185520362, 0.6832579185520362 ], "xaxis": "x2", "y": [ 27.6, 27.6, 28.4, 28.4, 27.6 ], "yaxis": "y2" }, { "fill": "toself", "fillcolor": "rgb(201, 219, 116)", "hovertemplate": "Task 32
Scaled Start: 0.688
Scaled End: 0.692
Scaled Duration: 0.005
Accelerator: 2
", "line": { "color": "black", "width": 1 }, "name": "Task 32", "showlegend": false, "type": "scatter", "x": [ 0.6877828054298643, 0.6923076923076923, 0.6923076923076923, 0.6877828054298643, 0.6877828054298643 ], "xaxis": "x2", "y": [ 31.6, 31.6, 32.4, 32.4, 31.6 ], "yaxis": "y2" }, { "fill": "toself", "fillcolor": "rgb(139, 224, 164)", "hovertemplate": "Task 29
Scaled Start: 0.692
Scaled End: 0.701
Scaled Duration: 0.009
Accelerator: 2
", "line": { "color": "black", "width": 1 }, "name": "Task 29", "showlegend": false, "type": "scatter", "x": [ 0.6923076923076923, 0.7013574660633484, 0.7013574660633484, 0.6923076923076923, 0.6923076923076923 ], "xaxis": "x2", "y": [ 28.6, 28.6, 29.4, 29.4, 28.6 ], "yaxis": "y2" }, { "fill": "toself", "fillcolor": "rgb(180, 151, 231)", "hovertemplate": "Task 26
Scaled Start: 0.701
Scaled End: 0.706
Scaled Duration: 0.005
Accelerator: 2
", "line": { "color": "black", "width": 1 }, "name": "Task 26", "showlegend": false, "type": "scatter", "x": [ 0.7013574660633484, 0.7058823529411765, 0.7058823529411765, 0.7013574660633484, 0.7013574660633484 ], "xaxis": "x2", "y": [ 25.6, 25.6, 26.4, 26.4, 25.6 ], "yaxis": "y2" }, { "fill": "toself", "fillcolor": "rgb(179, 179, 179)", "hovertemplate": "Task 30
Scaled Start: 0.706
Scaled End: 0.715
Scaled Duration: 0.009
Accelerator: 2
", "line": { "color": "black", "width": 1 }, "name": "Task 30", "showlegend": false, "type": "scatter", "x": [ 0.7058823529411765, 0.7149321266968326, 0.7149321266968326, 0.7058823529411765, 0.7058823529411765 ], "xaxis": "x2", "y": [ 29.6, 29.6, 30.4, 30.4, 29.6 ], "yaxis": "y2" }, { "fill": "toself", "fillcolor": "rgb(102, 197, 204)", "hovertemplate": "Task 27
Scaled Start: 0.715
Scaled End: 0.724
Scaled Duration: 0.009
Accelerator: 2
", "line": { "color": "black", "width": 1 }, "name": "Task 27", "showlegend": false, "type": "scatter", "x": [ 0.7149321266968326, 0.7239819004524887, 0.7239819004524887, 0.7149321266968326, 0.7149321266968326 ], "xaxis": "x2", "y": [ 26.6, 26.6, 27.4, 27.4, 26.6 ], "yaxis": "y2" }, { "fill": "toself", "fillcolor": "rgb(246, 207, 113)", "hovertemplate": "Task 33
Scaled Start: 0.724
Scaled End: 0.724
Scaled Duration: 0.000
Accelerator: 2
", "line": { "color": "black", "width": 1 }, "name": "Task 33", "showlegend": false, "type": "scatter", "x": [ 0.7239819004524887, 0.7239819004524887, 0.7239819004524887, 0.7239819004524887, 0.7239819004524887 ], "xaxis": "x2", "y": [ 32.6, 32.6, 33.4, 33.4, 32.6 ], "yaxis": "y2" }, { "fill": "toself", "fillcolor": "rgb(248, 156, 116)", "hovertemplate": "Task 35
Scaled Start: 0.724
Scaled End: 0.729
Scaled Duration: 0.005
Accelerator: 1
", "line": { "color": "black", "width": 1 }, "name": "Task 35", "showlegend": false, "type": "scatter", "x": [ 0.7239819004524887, 0.7285067873303167, 0.7285067873303167, 0.7239819004524887, 0.7239819004524887 ], "xaxis": "x2", "y": [ 34.6, 34.6, 35.4, 35.4, 34.6 ], "yaxis": "y2" }, { "fill": "toself", "fillcolor": "rgb(220, 176, 242)", "hovertemplate": "Task 34
Scaled Start: 0.724
Scaled End: 0.787
Scaled Duration: 0.063
Accelerator: 2
", "line": { "color": "black", "width": 1 }, "name": "Task 34", "showlegend": false, "type": "scatter", "x": [ 0.7239819004524887, 0.7873303167420814, 0.7873303167420814, 0.7239819004524887, 0.7239819004524887 ], "xaxis": "x2", "y": [ 33.6, 33.6, 34.4, 34.4, 33.6 ], "yaxis": "y2" }, { "fill": "toself", "fillcolor": "rgb(135, 197, 95)", "hovertemplate": "Task 40
Scaled Start: 0.729
Scaled End: 0.733
Scaled Duration: 0.005
Accelerator: 1
", "line": { "color": "black", "width": 1 }, "name": "Task 40", "showlegend": false, "type": "scatter", "x": [ 0.7285067873303167, 0.7330316742081447, 0.7330316742081447, 0.7285067873303167, 0.7285067873303167 ], "xaxis": "x2", "y": [ 39.6, 39.6, 40.4, 40.4, 39.6 ], "yaxis": "y2" }, { "fill": "toself", "fillcolor": "rgb(158, 185, 243)", "hovertemplate": "Task 36
Scaled Start: 0.733
Scaled End: 0.742
Scaled Duration: 0.009
Accelerator: 1
", "line": { "color": "black", "width": 1 }, "name": "Task 36", "showlegend": false, "type": "scatter", "x": [ 0.7330316742081447, 0.7420814479638009, 0.7420814479638009, 0.7330316742081447, 0.7330316742081447 ], "xaxis": "x2", "y": [ 35.6, 35.6, 36.4, 36.4, 35.6 ], "yaxis": "y2" }, { "fill": "toself", "fillcolor": "rgb(254, 136, 177)", "hovertemplate": "Task 41
Scaled Start: 0.742
Scaled End: 0.747
Scaled Duration: 0.005
Accelerator: 1
", "line": { "color": "black", "width": 1 }, "name": "Task 41", "showlegend": false, "type": "scatter", "x": [ 0.7420814479638009, 0.746606334841629, 0.746606334841629, 0.7420814479638009, 0.7420814479638009 ], "xaxis": "x2", "y": [ 40.6, 40.6, 41.4, 41.4, 40.6 ], "yaxis": "y2" }, { "fill": "toself", "fillcolor": "rgb(201, 219, 116)", "hovertemplate": "Task 37
Scaled Start: 0.747
Scaled End: 0.751
Scaled Duration: 0.005
Accelerator: 1
", "line": { "color": "black", "width": 1 }, "name": "Task 37", "showlegend": false, "type": "scatter", "x": [ 0.746606334841629, 0.751131221719457, 0.751131221719457, 0.746606334841629, 0.746606334841629 ], "xaxis": "x2", "y": [ 36.6, 36.6, 37.4, 37.4, 36.6 ], "yaxis": "y2" }, { "fill": "toself", "fillcolor": "rgb(139, 224, 164)", "hovertemplate": "Task 38
Scaled Start: 0.751
Scaled End: 0.760
Scaled Duration: 0.009
Accelerator: 1
", "line": { "color": "black", "width": 1 }, "name": "Task 38", "showlegend": false, "type": "scatter", "x": [ 0.751131221719457, 0.7601809954751131, 0.7601809954751131, 0.751131221719457, 0.751131221719457 ], "xaxis": "x2", "y": [ 37.6, 37.6, 38.4, 38.4, 37.6 ], "yaxis": "y2" }, { "fill": "toself", "fillcolor": "rgb(180, 151, 231)", "hovertemplate": "Task 39
Scaled Start: 0.760
Scaled End: 0.769
Scaled Duration: 0.009
Accelerator: 1
", "line": { "color": "black", "width": 1 }, "name": "Task 39", "showlegend": false, "type": "scatter", "x": [ 0.7601809954751131, 0.7692307692307693, 0.7692307692307693, 0.7601809954751131, 0.7601809954751131 ], "xaxis": "x2", "y": [ 38.6, 38.6, 39.4, 39.4, 38.6 ], "yaxis": "y2" }, { "fill": "toself", "fillcolor": "rgb(179, 179, 179)", "hovertemplate": "Task 42
Scaled Start: 0.787
Scaled End: 0.787
Scaled Duration: 0.000
Accelerator: 1
", "line": { "color": "black", "width": 1 }, "name": "Task 42", "showlegend": false, "type": "scatter", "x": [ 0.7873303167420814, 0.7873303167420814, 0.7873303167420814, 0.7873303167420814, 0.7873303167420814 ], "xaxis": "x2", "y": [ 41.6, 41.6, 42.4, 42.4, 41.6 ], "yaxis": "y2" }, { "fill": "toself", "fillcolor": "rgb(102, 197, 204)", "hovertemplate": "Task 43
Scaled Start: 0.787
Scaled End: 0.792
Scaled Duration: 0.005
Accelerator: 1
", "line": { "color": "black", "width": 1 }, "name": "Task 43", "showlegend": false, "type": "scatter", "x": [ 0.7873303167420814, 0.7918552036199095, 0.7918552036199095, 0.7873303167420814, 0.7873303167420814 ], "xaxis": "x2", "y": [ 42.6, 42.6, 43.4, 43.4, 42.6 ], "yaxis": "y2" }, { "fill": "toself", "fillcolor": "rgb(246, 207, 113)", "hovertemplate": "Task 49
Scaled Start: 0.792
Scaled End: 0.796
Scaled Duration: 0.005
Accelerator: 1
", "line": { "color": "black", "width": 1 }, "name": "Task 49", "showlegend": false, "type": "scatter", "x": [ 0.7918552036199095, 0.7963800904977375, 0.7963800904977375, 0.7918552036199095, 0.7918552036199095 ], "xaxis": "x2", "y": [ 48.6, 48.6, 49.4, 49.4, 48.6 ], "yaxis": "y2" }, { "fill": "toself", "fillcolor": "rgb(248, 156, 116)", "hovertemplate": "Task 46
Scaled Start: 0.796
Scaled End: 0.801
Scaled Duration: 0.005
Accelerator: 1
", "line": { "color": "black", "width": 1 }, "name": "Task 46", "showlegend": false, "type": "scatter", "x": [ 0.7963800904977375, 0.8009049773755657, 0.8009049773755657, 0.7963800904977375, 0.7963800904977375 ], "xaxis": "x2", "y": [ 45.6, 45.6, 46.4, 46.4, 45.6 ], "yaxis": "y2" }, { "fill": "toself", "fillcolor": "rgb(220, 176, 242)", "hovertemplate": "Task 50
Scaled Start: 0.801
Scaled End: 0.805
Scaled Duration: 0.005
Accelerator: 1
", "line": { "color": "black", "width": 1 }, "name": "Task 50", "showlegend": false, "type": "scatter", "x": [ 0.8009049773755657, 0.8054298642533937, 0.8054298642533937, 0.8009049773755657, 0.8009049773755657 ], "xaxis": "x2", "y": [ 49.6, 49.6, 50.4, 50.4, 49.6 ], "yaxis": "y2" }, { "fill": "toself", "fillcolor": "rgb(135, 197, 95)", "hovertemplate": "Task 47
Scaled Start: 0.805
Scaled End: 0.814
Scaled Duration: 0.009
Accelerator: 1
", "line": { "color": "black", "width": 1 }, "name": "Task 47", "showlegend": false, "type": "scatter", "x": [ 0.8054298642533937, 0.8144796380090498, 0.8144796380090498, 0.8054298642533937, 0.8054298642533937 ], "xaxis": "x2", "y": [ 46.6, 46.6, 47.4, 47.4, 46.6 ], "yaxis": "y2" }, { "fill": "toself", "fillcolor": "rgb(158, 185, 243)", "hovertemplate": "Task 44
Scaled Start: 0.814
Scaled End: 0.819
Scaled Duration: 0.005
Accelerator: 1
", "line": { "color": "black", "width": 1 }, "name": "Task 44", "showlegend": false, "type": "scatter", "x": [ 0.8144796380090498, 0.8190045248868778, 0.8190045248868778, 0.8144796380090498, 0.8144796380090498 ], "xaxis": "x2", "y": [ 43.6, 43.6, 44.4, 44.4, 43.6 ], "yaxis": "y2" }, { "fill": "toself", "fillcolor": "rgb(254, 136, 177)", "hovertemplate": "Task 48
Scaled Start: 0.819
Scaled End: 0.828
Scaled Duration: 0.009
Accelerator: 1
", "line": { "color": "black", "width": 1 }, "name": "Task 48", "showlegend": false, "type": "scatter", "x": [ 0.8190045248868778, 0.8280542986425339, 0.8280542986425339, 0.8190045248868778, 0.8190045248868778 ], "xaxis": "x2", "y": [ 47.6, 47.6, 48.4, 48.4, 47.6 ], "yaxis": "y2" }, { "fill": "toself", "fillcolor": "rgb(201, 219, 116)", "hovertemplate": "Task 45
Scaled Start: 0.828
Scaled End: 0.837
Scaled Duration: 0.009
Accelerator: 1
", "line": { "color": "black", "width": 1 }, "name": "Task 45", "showlegend": false, "type": "scatter", "x": [ 0.8280542986425339, 0.8371040723981901, 0.8371040723981901, 0.8280542986425339, 0.8280542986425339 ], "xaxis": "x2", "y": [ 44.6, 44.6, 45.4, 45.4, 44.6 ], "yaxis": "y2" }, { "fill": "toself", "fillcolor": "rgb(139, 224, 164)", "hovertemplate": "Task 51
Scaled Start: 0.837
Scaled End: 0.837
Scaled Duration: 0.000
Accelerator: 1
", "line": { "color": "black", "width": 1 }, "name": "Task 51", "showlegend": false, "type": "scatter", "x": [ 0.8371040723981901, 0.8371040723981901, 0.8371040723981901, 0.8371040723981901, 0.8371040723981901 ], "xaxis": "x2", "y": [ 50.6, 50.6, 51.4, 51.4, 50.6 ], "yaxis": "y2" }, { "fill": "toself", "fillcolor": "rgb(180, 151, 231)", "hovertemplate": "Task 53
Scaled Start: 0.837
Scaled End: 0.846
Scaled Duration: 0.009
Accelerator: 0
", "line": { "color": "black", "width": 1 }, "name": "Task 53", "showlegend": false, "type": "scatter", "x": [ 0.8371040723981901, 0.8461538461538461, 0.8461538461538461, 0.8371040723981901, 0.8371040723981901 ], "xaxis": "x2", "y": [ 52.6, 52.6, 53.4, 53.4, 52.6 ], "yaxis": "y2" }, { "fill": "toself", "fillcolor": "rgb(179, 179, 179)", "hovertemplate": "Task 52
Scaled Start: 0.837
Scaled End: 0.923
Scaled Duration: 0.086
Accelerator: 1
", "line": { "color": "black", "width": 1 }, "name": "Task 52", "showlegend": false, "type": "scatter", "x": [ 0.8371040723981901, 0.9230769230769231, 0.9230769230769231, 0.8371040723981901, 0.8371040723981901 ], "xaxis": "x2", "y": [ 51.6, 51.6, 52.4, 52.4, 51.6 ], "yaxis": "y2" }, { "fill": "toself", "fillcolor": "rgb(102, 197, 204)", "hovertemplate": "Task 56
Scaled Start: 0.846
Scaled End: 0.851
Scaled Duration: 0.005
Accelerator: 0
", "line": { "color": "black", "width": 1 }, "name": "Task 56", "showlegend": false, "type": "scatter", "x": [ 0.8461538461538461, 0.8506787330316742, 0.8506787330316742, 0.8461538461538461, 0.8461538461538461 ], "xaxis": "x2", "y": [ 55.6, 55.6, 56.4, 56.4, 55.6 ], "yaxis": "y2" }, { "fill": "toself", "fillcolor": "rgb(246, 207, 113)", "hovertemplate": "Task 54
Scaled Start: 0.851
Scaled End: 0.887
Scaled Duration: 0.036
Accelerator: 0
", "line": { "color": "black", "width": 1 }, "name": "Task 54", "showlegend": false, "type": "scatter", "x": [ 0.8506787330316742, 0.8868778280542986, 0.8868778280542986, 0.8506787330316742, 0.8506787330316742 ], "xaxis": "x2", "y": [ 53.6, 53.6, 54.4, 54.4, 53.6 ], "yaxis": "y2" }, { "fill": "toself", "fillcolor": "rgb(248, 156, 116)", "hovertemplate": "Task 55
Scaled Start: 0.887
Scaled End: 0.900
Scaled Duration: 0.014
Accelerator: 0
", "line": { "color": "black", "width": 1 }, "name": "Task 55", "showlegend": false, "type": "scatter", "x": [ 0.8868778280542986, 0.9004524886877828, 0.9004524886877828, 0.8868778280542986, 0.8868778280542986 ], "xaxis": "x2", "y": [ 54.6, 54.6, 55.4, 55.4, 54.6 ], "yaxis": "y2" }, { "fill": "toself", "fillcolor": "rgb(220, 176, 242)", "hovertemplate": "Task 57
Scaled Start: 0.923
Scaled End: 0.923
Scaled Duration: 0.000
Accelerator: 0
", "line": { "color": "black", "width": 1 }, "name": "Task 57", "showlegend": false, "type": "scatter", "x": [ 0.9230769230769231, 0.9230769230769231, 0.9230769230769231, 0.9230769230769231, 0.9230769230769231 ], "xaxis": "x2", "y": [ 56.6, 56.6, 57.4, 57.4, 56.6 ], "yaxis": "y2" }, { "fill": "toself", "fillcolor": "rgb(135, 197, 95)", "hovertemplate": "Task 62
Scaled Start: 0.923
Scaled End: 0.928
Scaled Duration: 0.005
Accelerator: 4
", "line": { "color": "black", "width": 1 }, "name": "Task 62", "showlegend": false, "type": "scatter", "x": [ 0.9230769230769231, 0.9276018099547512, 0.9276018099547512, 0.9230769230769231, 0.9230769230769231 ], "xaxis": "x2", "y": [ 61.6, 61.6, 62.4, 62.4, 61.6 ], "yaxis": "y2" }, { "fill": "toself", "fillcolor": "rgb(158, 185, 243)", "hovertemplate": "Task 58
Scaled Start: 0.923
Scaled End: 0.932
Scaled Duration: 0.009
Accelerator: 0
", "line": { "color": "black", "width": 1 }, "name": "Task 58", "showlegend": false, "type": "scatter", "x": [ 0.9230769230769231, 0.9321266968325792, 0.9321266968325792, 0.9230769230769231, 0.9230769230769231 ], "xaxis": "x2", "y": [ 57.6, 57.6, 58.4, 58.4, 57.6 ], "yaxis": "y2" }, { "fill": "toself", "fillcolor": "rgb(254, 136, 177)", "hovertemplate": "Task 63
Scaled Start: 0.928
Scaled End: 0.937
Scaled Duration: 0.009
Accelerator: 4
", "line": { "color": "black", "width": 1 }, "name": "Task 63", "showlegend": false, "type": "scatter", "x": [ 0.9276018099547512, 0.9366515837104072, 0.9366515837104072, 0.9276018099547512, 0.9276018099547512 ], "xaxis": "x2", "y": [ 62.6, 62.6, 63.4, 63.4, 62.6 ], "yaxis": "y2" }, { "fill": "toself", "fillcolor": "rgb(201, 219, 116)", "hovertemplate": "Task 67
Scaled Start: 0.932
Scaled End: 0.937
Scaled Duration: 0.005
Accelerator: 0
", "line": { "color": "black", "width": 1 }, "name": "Task 67", "showlegend": false, "type": "scatter", "x": [ 0.9321266968325792, 0.9366515837104072, 0.9366515837104072, 0.9321266968325792, 0.9321266968325792 ], "xaxis": "x2", "y": [ 66.6, 66.6, 67.4, 67.4, 66.6 ], "yaxis": "y2" }, { "fill": "toself", "fillcolor": "rgb(139, 224, 164)", "hovertemplate": "Task 59
Scaled Start: 0.937
Scaled End: 0.941
Scaled Duration: 0.005
Accelerator: 0
", "line": { "color": "black", "width": 1 }, "name": "Task 59", "showlegend": false, "type": "scatter", "x": [ 0.9366515837104072, 0.9411764705882353, 0.9411764705882353, 0.9366515837104072, 0.9366515837104072 ], "xaxis": "x2", "y": [ 58.6, 58.6, 59.4, 59.4, 58.6 ], "yaxis": "y2" }, { "fill": "toself", "fillcolor": "rgb(180, 151, 231)", "hovertemplate": "Task 64
Scaled Start: 0.937
Scaled End: 0.977
Scaled Duration: 0.041
Accelerator: 4
", "line": { "color": "black", "width": 1 }, "name": "Task 64", "showlegend": false, "type": "scatter", "x": [ 0.9366515837104072, 0.9773755656108597, 0.9773755656108597, 0.9366515837104072, 0.9366515837104072 ], "xaxis": "x2", "y": [ 63.6, 63.6, 64.4, 64.4, 63.6 ], "yaxis": "y2" }, { "fill": "toself", "fillcolor": "rgb(179, 179, 179)", "hovertemplate": "Task 68
Scaled Start: 0.941
Scaled End: 0.946
Scaled Duration: 0.005
Accelerator: 0
", "line": { "color": "black", "width": 1 }, "name": "Task 68", "showlegend": false, "type": "scatter", "x": [ 0.9411764705882353, 0.9457013574660633, 0.9457013574660633, 0.9411764705882353, 0.9411764705882353 ], "xaxis": "x2", "y": [ 67.6, 67.6, 68.4, 68.4, 67.6 ], "yaxis": "y2" }, { "fill": "toself", "fillcolor": "rgb(102, 197, 204)", "hovertemplate": "Task 60
Scaled Start: 0.946
Scaled End: 0.955
Scaled Duration: 0.009
Accelerator: 0
", "line": { "color": "black", "width": 1 }, "name": "Task 60", "showlegend": false, "type": "scatter", "x": [ 0.9457013574660633, 0.9547511312217195, 0.9547511312217195, 0.9457013574660633, 0.9457013574660633 ], "xaxis": "x2", "y": [ 59.6, 59.6, 60.4, 60.4, 59.6 ], "yaxis": "y2" }, { "fill": "toself", "fillcolor": "rgb(246, 207, 113)", "hovertemplate": "Task 61
Scaled Start: 0.955
Scaled End: 0.964
Scaled Duration: 0.009
Accelerator: 0
", "line": { "color": "black", "width": 1 }, "name": "Task 61", "showlegend": false, "type": "scatter", "x": [ 0.9547511312217195, 0.9638009049773756, 0.9638009049773756, 0.9547511312217195, 0.9547511312217195 ], "xaxis": "x2", "y": [ 60.6, 60.6, 61.4, 61.4, 60.6 ], "yaxis": "y2" }, { "fill": "toself", "fillcolor": "rgb(248, 156, 116)", "hovertemplate": "Task 65
Scaled Start: 0.977
Scaled End: 0.986
Scaled Duration: 0.009
Accelerator: 0
", "line": { "color": "black", "width": 1 }, "name": "Task 65", "showlegend": false, "type": "scatter", "x": [ 0.9773755656108597, 0.9864253393665159, 0.9864253393665159, 0.9773755656108597, 0.9773755656108597 ], "xaxis": "x2", "y": [ 64.6, 64.6, 65.4, 65.4, 64.6 ], "yaxis": "y2" }, { "fill": "toself", "fillcolor": "rgb(220, 176, 242)", "hovertemplate": "Task 66
Scaled Start: 0.986
Scaled End: 0.995
Scaled Duration: 0.009
Accelerator: 0
", "line": { "color": "black", "width": 1 }, "name": "Task 66", "showlegend": false, "type": "scatter", "x": [ 0.9864253393665159, 0.995475113122172, 0.995475113122172, 0.9864253393665159, 0.9864253393665159 ], "xaxis": "x2", "y": [ 65.6, 65.6, 66.4, 66.4, 65.6 ], "yaxis": "y2" }, { "fill": "toself", "fillcolor": "rgb(135, 197, 95)", "hovertemplate": "Task 69
Scaled Start: 0.995
Scaled End: 1.000
Scaled Duration: 0.005
Accelerator: 0
", "line": { "color": "black", "width": 1 }, "name": "Task 69", "showlegend": false, "type": "scatter", "x": [ 0.995475113122172, 1, 1, 0.995475113122172, 0.995475113122172 ], "xaxis": "x2", "y": [ 68.6, 68.6, 69.4, 69.4, 68.6 ], "yaxis": "y2" } ], "layout": { "annotations": [ { "font": { "size": 16 }, "showarrow": false, "text": "Task Schedule (Scaled 0-1)", "x": 0.5, "xanchor": "center", "xref": "paper", "y": 1, "yanchor": "bottom", "yref": "paper" }, { "font": { "size": 16 }, "showarrow": false, "text": "Simulation Results (Scaled 0-1)", "x": 0.5, "xanchor": "center", "xref": "paper", "y": 0.45, "yanchor": "bottom", "yref": "paper" } ], "height": 800, "showlegend": false, "template": { "data": { "bar": [ { "error_x": { "color": "#2a3f5f" }, "error_y": { "color": "#2a3f5f" }, "marker": { "line": { "color": "#E5ECF6", "width": 0.5 }, "pattern": { "fillmode": "overlay", "size": 10, "solidity": 0.2 } }, "type": "bar" } ], "barpolar": [ { "marker": { "line": { "color": "#E5ECF6", "width": 0.5 }, "pattern": { "fillmode": "overlay", "size": 10, "solidity": 0.2 } }, "type": "barpolar" } ], "carpet": [ { "aaxis": { "endlinecolor": "#2a3f5f", "gridcolor": "white", "linecolor": "white", "minorgridcolor": "white", "startlinecolor": "#2a3f5f" }, "baxis": { "endlinecolor": "#2a3f5f", "gridcolor": "white", "linecolor": "white", "minorgridcolor": "white", "startlinecolor": "#2a3f5f" }, "type": "carpet" } ], "choropleth": [ { "colorbar": { "outlinewidth": 0, "ticks": "" }, "type": "choropleth" } ], "contour": [ { "colorbar": { "outlinewidth": 0, "ticks": "" }, "colorscale": [ [ 0, "#0d0887" ], [ 0.1111111111111111, "#46039f" ], [ 0.2222222222222222, "#7201a8" ], [ 0.3333333333333333, "#9c179e" ], [ 0.4444444444444444, "#bd3786" ], [ 0.5555555555555556, "#d8576b" ], [ 0.6666666666666666, "#ed7953" ], [ 0.7777777777777778, "#fb9f3a" ], [ 0.8888888888888888, "#fdca26" ], [ 1, "#f0f921" ] ], "type": "contour" } ], "contourcarpet": [ { "colorbar": { "outlinewidth": 0, "ticks": "" }, "type": "contourcarpet" } ], "heatmap": [ { "colorbar": { "outlinewidth": 0, "ticks": "" }, "colorscale": [ [ 0, "#0d0887" ], [ 0.1111111111111111, "#46039f" ], [ 0.2222222222222222, "#7201a8" ], [ 0.3333333333333333, "#9c179e" ], [ 0.4444444444444444, "#bd3786" ], [ 0.5555555555555556, "#d8576b" ], [ 0.6666666666666666, "#ed7953" ], [ 0.7777777777777778, "#fb9f3a" ], [ 0.8888888888888888, "#fdca26" ], [ 1, "#f0f921" ] ], "type": "heatmap" } ], "histogram": [ { "marker": { "pattern": { "fillmode": "overlay", "size": 10, "solidity": 0.2 } }, "type": "histogram" } ], "histogram2d": [ { "colorbar": { "outlinewidth": 0, "ticks": "" }, "colorscale": [ [ 0, "#0d0887" ], [ 0.1111111111111111, "#46039f" ], [ 0.2222222222222222, "#7201a8" ], [ 0.3333333333333333, "#9c179e" ], [ 0.4444444444444444, "#bd3786" ], [ 0.5555555555555556, "#d8576b" ], [ 0.6666666666666666, "#ed7953" ], [ 0.7777777777777778, "#fb9f3a" ], [ 0.8888888888888888, "#fdca26" ], [ 1, "#f0f921" ] ], "type": "histogram2d" } ], "histogram2dcontour": [ { "colorbar": { "outlinewidth": 0, "ticks": "" }, "colorscale": [ [ 0, "#0d0887" ], [ 0.1111111111111111, "#46039f" ], [ 0.2222222222222222, "#7201a8" ], [ 0.3333333333333333, "#9c179e" ], [ 0.4444444444444444, "#bd3786" ], [ 0.5555555555555556, "#d8576b" ], [ 0.6666666666666666, "#ed7953" ], [ 0.7777777777777778, "#fb9f3a" ], [ 0.8888888888888888, "#fdca26" ], [ 1, "#f0f921" ] ], "type": "histogram2dcontour" } ], "mesh3d": [ { "colorbar": { "outlinewidth": 0, "ticks": "" }, "type": "mesh3d" } ], "parcoords": [ { "line": { "colorbar": { "outlinewidth": 0, "ticks": "" } }, "type": "parcoords" } ], "pie": [ { "automargin": true, "type": "pie" } ], "scatter": [ { "fillpattern": { "fillmode": "overlay", "size": 10, "solidity": 0.2 }, "type": "scatter" } ], "scatter3d": [ { "line": { "colorbar": { "outlinewidth": 0, "ticks": "" } }, "marker": { "colorbar": { "outlinewidth": 0, "ticks": "" } }, "type": "scatter3d" } ], "scattercarpet": [ { "marker": { "colorbar": { "outlinewidth": 0, "ticks": "" } }, "type": "scattercarpet" } ], "scattergeo": [ { "marker": { "colorbar": { "outlinewidth": 0, "ticks": "" } }, "type": "scattergeo" } ], "scattergl": [ { "marker": { "colorbar": { "outlinewidth": 0, "ticks": "" } }, "type": "scattergl" } ], "scattermap": [ { "marker": { "colorbar": { "outlinewidth": 0, "ticks": "" } }, "type": "scattermap" } ], "scattermapbox": [ { "marker": { "colorbar": { "outlinewidth": 0, "ticks": "" } }, "type": "scattermapbox" } ], "scatterpolar": [ { "marker": { "colorbar": { "outlinewidth": 0, "ticks": "" } }, "type": "scatterpolar" } ], "scatterpolargl": [ { "marker": { "colorbar": { "outlinewidth": 0, "ticks": "" } }, "type": "scatterpolargl" } ], "scatterternary": [ { "marker": { "colorbar": { "outlinewidth": 0, "ticks": "" } }, "type": "scatterternary" } ], "surface": [ { "colorbar": { "outlinewidth": 0, "ticks": "" }, "colorscale": [ [ 0, "#0d0887" ], [ 0.1111111111111111, "#46039f" ], [ 0.2222222222222222, "#7201a8" ], [ 0.3333333333333333, "#9c179e" ], [ 0.4444444444444444, "#bd3786" ], [ 0.5555555555555556, "#d8576b" ], [ 0.6666666666666666, "#ed7953" ], [ 0.7777777777777778, "#fb9f3a" ], [ 0.8888888888888888, "#fdca26" ], [ 1, "#f0f921" ] ], "type": "surface" } ], "table": [ { "cells": { "fill": { "color": "#EBF0F8" }, "line": { "color": "white" } }, "header": { "fill": { "color": "#C8D4E3" }, "line": { "color": "white" } }, "type": "table" } ] }, "layout": { "annotationdefaults": { "arrowcolor": "#2a3f5f", "arrowhead": 0, "arrowwidth": 1 }, "autotypenumbers": "strict", "coloraxis": { "colorbar": { "outlinewidth": 0, "ticks": "" } }, "colorscale": { "diverging": [ [ 0, "#8e0152" ], [ 0.1, "#c51b7d" ], [ 0.2, "#de77ae" ], [ 0.3, "#f1b6da" ], [ 0.4, "#fde0ef" ], [ 0.5, "#f7f7f7" ], [ 0.6, "#e6f5d0" ], [ 0.7, "#b8e186" ], [ 0.8, "#7fbc41" ], [ 0.9, "#4d9221" ], [ 1, "#276419" ] ], "sequential": [ [ 0, "#0d0887" ], [ 0.1111111111111111, "#46039f" ], [ 0.2222222222222222, "#7201a8" ], [ 0.3333333333333333, "#9c179e" ], [ 0.4444444444444444, "#bd3786" ], [ 0.5555555555555556, "#d8576b" ], [ 0.6666666666666666, "#ed7953" ], [ 0.7777777777777778, "#fb9f3a" ], [ 0.8888888888888888, "#fdca26" ], [ 1, "#f0f921" ] ], "sequentialminus": [ [ 0, "#0d0887" ], [ 0.1111111111111111, "#46039f" ], [ 0.2222222222222222, "#7201a8" ], [ 0.3333333333333333, "#9c179e" ], [ 0.4444444444444444, "#bd3786" ], [ 0.5555555555555556, "#d8576b" ], [ 0.6666666666666666, "#ed7953" ], [ 0.7777777777777778, "#fb9f3a" ], [ 0.8888888888888888, "#fdca26" ], [ 1, "#f0f921" ] ] }, "colorway": [ "#636efa", "#EF553B", "#00cc96", "#ab63fa", "#FFA15A", "#19d3f3", "#FF6692", "#B6E880", "#FF97FF", "#FECB52" ], "font": { "color": "#2a3f5f" }, "geo": { "bgcolor": "white", "lakecolor": "white", "landcolor": "#E5ECF6", "showlakes": true, "showland": true, "subunitcolor": "white" }, "hoverlabel": { "align": "left" }, "hovermode": "closest", "mapbox": { "style": "light" }, "paper_bgcolor": "white", "plot_bgcolor": "#E5ECF6", "polar": { "angularaxis": { "gridcolor": "white", "linecolor": "white", "ticks": "" }, "bgcolor": "#E5ECF6", "radialaxis": { "gridcolor": "white", "linecolor": "white", "ticks": "" } }, "scene": { "xaxis": { "backgroundcolor": "#E5ECF6", "gridcolor": "white", "gridwidth": 2, "linecolor": "white", "showbackground": true, "ticks": "", "zerolinecolor": "white" }, "yaxis": { "backgroundcolor": "#E5ECF6", "gridcolor": "white", "gridwidth": 2, "linecolor": "white", "showbackground": true, "ticks": "", "zerolinecolor": "white" }, "zaxis": { "backgroundcolor": "#E5ECF6", "gridcolor": "white", "gridwidth": 2, "linecolor": "white", "showbackground": true, "ticks": "", "zerolinecolor": "white" } }, "shapedefaults": { "line": { "color": "#2a3f5f" } }, "ternary": { "aaxis": { "gridcolor": "white", "linecolor": "white", "ticks": "" }, "baxis": { "gridcolor": "white", "linecolor": "white", "ticks": "" }, "bgcolor": "#E5ECF6", "caxis": { "gridcolor": "white", "linecolor": "white", "ticks": "" } }, "title": { "x": 0.05 }, "xaxis": { "automargin": true, "gridcolor": "white", "linecolor": "white", "ticks": "", "title": { "standoff": 15 }, "zerolinecolor": "white", "zerolinewidth": 2 }, "yaxis": { "automargin": true, "gridcolor": "white", "linecolor": "white", "ticks": "", "title": { "standoff": 15 }, "zerolinecolor": "white", "zerolinewidth": 2 } } }, "title": { "text": "Gantt Chart Comparison (Scaled to 0-1 Range)" }, "xaxis": { "anchor": "y", "domain": [ 0, 1 ], "title": { "text": "Scaled Time (0-1)" } }, "xaxis2": { "anchor": "y2", "domain": [ 0, 1 ], "title": { "text": "Scaled Time (0-1)" } }, "yaxis": { "anchor": "x", "domain": [ 0.55, 1 ], "title": { "text": "Task ID" } }, "yaxis2": { "anchor": "x2", "domain": [ 0, 0.45 ], "title": { "text": "Task ID" } } } } }, "metadata": {}, "output_type": "display_data" } ], "source": [ "def create_gantt_comparison():\n", " \"\"\"Create side-by-side Gantt charts for comparison\"\"\"\n", " \n", " # Create subplots\n", " fig = make_subplots(\n", " rows=2, cols=1,\n", " subplot_titles=('Task Schedule (Original)', 'Simulation Results'),\n", " vertical_spacing=0.1,\n", " specs=[[{\"secondary_y\": False}], [{\"secondary_y\": False}]]\n", " )\n", " \n", " # Colors for tasks\n", " colors1 = px.colors.qualitative.Set3\n", " colors2 = px.colors.qualitative.Pastel\n", " \n", " # Plot first dataset (normalized)\n", " for i, row in df1.iterrows():\n", " fig.add_trace(\n", " go.Scatter(\n", " x=[row['Start_Normalized'], row['End_Normalized'], row['End_Normalized'], row['Start_Normalized'], row['Start_Normalized']],\n", " y=[row['Task_ID']-0.4, row['Task_ID']-0.4, row['Task_ID']+0.4, row['Task_ID']+0.4, row['Task_ID']-0.4],\n", " fill='toself',\n", " fillcolor=colors1[i % len(colors1)],\n", " line=dict(color='black', width=1),\n", " name=f\"Task {row['Task_ID']}\",\n", " text=f\"Duration: {row['Duration']:.1f}\",\n", " hovertemplate=f\"Task {row['Task_ID']}
\" +\n", " f\"Start: {row['Start']:.1f}
\" +\n", " f\"End: {row['End']:.1f}
\" +\n", " f\"Duration: {row['Duration']:.1f}
\" +\n", " \"\",\n", " showlegend=False\n", " ),\n", " row=1, col=1\n", " )\n", " \n", " # Plot second dataset (normalized)\n", " for i, row in df2.iterrows():\n", " fig.add_trace(\n", " go.Scatter(\n", " x=[row['Start_Normalized'], row['End_Normalized'], row['End_Normalized'], row['Start_Normalized'], row['Start_Normalized']],\n", " y=[row['Task_ID']-0.4, row['Task_ID']-0.4, row['Task_ID']+0.4, row['Task_ID']+0.4, row['Task_ID']-0.4],\n", " fill='toself',\n", " fillcolor=colors2[i % len(colors2)],\n", " line=dict(color='black', width=1),\n", " name=f\"Task {row['Task_ID']}\",\n", " text=f\"Duration: {row['Duration']:.1f}\",\n", " hovertemplate=f\"Task {row['Task_ID']}
\" +\n", " f\"Start: {row['Start']:.1f}
\" +\n", " f\"End: {row['End']:.1f}
\" +\n", " f\"Duration: {row['Duration']:.1f}
\" +\n", " f\"Accelerator: {row.get('accelerator', 'N/A')}
\" +\n", " \"\",\n", " showlegend=False\n", " ),\n", " row=2, col=1\n", " )\n", " \n", " # Update layout\n", " fig.update_layout(\n", " title=\"Gantt Chart Comparison (Normalized Time)\",\n", " height=800,\n", " showlegend=False\n", " )\n", " \n", " fig.update_xaxes(title_text=\"Normalized Time\", row=1, col=1)\n", " fig.update_xaxes(title_text=\"Normalized Time\", row=2, col=1)\n", " fig.update_yaxes(title_text=\"Task ID\", row=1, col=1)\n", " fig.update_yaxes(title_text=\"Task ID\", row=2, col=1)\n", " \n", " return fig\n", "\n", "def create_scaled_comparison():\n", " \"\"\"Create comparison with both datasets scaled to 0-1 range\"\"\"\n", " \n", " fig = make_subplots(\n", " rows=2, cols=1,\n", " subplot_titles=('Task Schedule (Scaled 0-1)', 'Simulation Results (Scaled 0-1)'),\n", " vertical_spacing=0.1\n", " )\n", " \n", " # Plot first dataset (scaled)\n", " for i, row in df1.iterrows():\n", " fig.add_trace(\n", " go.Scatter(\n", " x=[row['Start_Scaled'], row['End_Scaled'], row['End_Scaled'], row['Start_Scaled'], row['Start_Scaled']],\n", " y=[row['Task_ID']-0.4, row['Task_ID']-0.4, row['Task_ID']+0.4, row['Task_ID']+0.4, row['Task_ID']-0.4],\n", " fill='toself',\n", " fillcolor=px.colors.qualitative.Set3[i % len(px.colors.qualitative.Set3)],\n", " line=dict(color='black', width=1),\n", " name=f\"Task {row['Task_ID']}\",\n", " hovertemplate=f\"Task {row['Task_ID']}
\" +\n", " f\"Scaled Start: {row['Start_Scaled']:.3f}
\" +\n", " f\"Scaled End: {row['End_Scaled']:.3f}
\" +\n", " f\"Scaled Duration: {row['Duration_Scaled']:.3f}
\" +\n", " \"\",\n", " showlegend=False\n", " ),\n", " row=1, col=1\n", " )\n", " \n", " # Plot second dataset (scaled)\n", " for i, row in df2.iterrows():\n", " fig.add_trace(\n", " go.Scatter(\n", " x=[row['Start_Scaled'], row['End_Scaled'], row['End_Scaled'], row['Start_Scaled'], row['Start_Scaled']],\n", " y=[row['Task_ID']-0.4, row['Task_ID']-0.4, row['Task_ID']+0.4, row['Task_ID']+0.4, row['Task_ID']-0.4],\n", " fill='toself',\n", " fillcolor=px.colors.qualitative.Pastel[i % len(px.colors.qualitative.Pastel)],\n", " line=dict(color='black', width=1),\n", " name=f\"Task {row['Task_ID']}\",\n", " hovertemplate=f\"Task {row['Task_ID']}
\" +\n", " f\"Scaled Start: {row['Start_Scaled']:.3f}
\" +\n", " f\"Scaled End: {row['End_Scaled']:.3f}
\" +\n", " f\"Scaled Duration: {row['Duration_Scaled']:.3f}
\" +\n", " f\"Accelerator: {row.get('accelerator', 'N/A')}
\" +\n", " \"\",\n", " showlegend=False\n", " ),\n", " row=2, col=1\n", " )\n", " \n", " fig.update_layout(\n", " title=\"Gantt Chart Comparison (Scaled to 0-1 Range)\",\n", " height=800,\n", " showlegend=False\n", " )\n", " \n", " fig.update_xaxes(title_text=\"Scaled Time (0-1)\", row=1, col=1)\n", " fig.update_xaxes(title_text=\"Scaled Time (0-1)\", row=2, col=1)\n", " fig.update_yaxes(title_text=\"Task ID\", row=1, col=1)\n", " fig.update_yaxes(title_text=\"Task ID\", row=2, col=1)\n", " \n", " return fig\n", "\n", "# Create and display the comparisons\n", "gantt_fig = create_gantt_comparison()\n", "gantt_fig.show()\n", "\n", "scaled_fig = create_scaled_comparison()\n", "scaled_fig.show()" ] }, { "cell_type": "code", "execution_count": 31, "id": "12a7bea6", "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "=== DETAILED COMPARISON ANALYSIS ===\n", "Common tasks between datasets: 70\n", "Tasks only in Dataset 1: 0\n", "Tasks only in Dataset 2: 1\n", "\n", "=== DURATION COMPARISON ===\n", "Average duration difference: -2.70\n", "Median duration difference: 0.00\n", "Max duration difference: 0.00\n", "Min duration difference: -53.00\n", "\n", "=== START TIME COMPARISON (Normalized) ===\n", "Average start time difference: -104.69\n", "Median start time difference: -114.00\n", "\n", "=== TASKS WITH LARGEST DIFFERENCES ===\n", "Top 10 tasks with largest duration differences:\n", " Task_ID Duration_1 Duration_2 Duration_Diff Accelerator\n", " 0 1.0 1 0.0 10\n", " 1 4.0 4 0.0 10\n", " 2 7.0 7 0.0 10\n", " 4 5.0 5 0.0 6\n", " 5 0.0 0 0.0 6\n", " 7 5.0 5 0.0 3\n", " 8 1.0 1 0.0 7\n", " 9 3.0 3 0.0 7\n", " 11 5.0 5 0.0 3\n", " 12 0.0 0 0.0 3\n", "\n", "Top 10 tasks with largest duration ratios:\n", " Task_ID Duration_1 Duration_2 Duration_Ratio Accelerator\n", " 5 0.0 0 inf 6\n", " 12 0.0 0 inf 3\n", " 15 0.0 0 inf 3\n", " 24 0.0 0 inf 2\n", " 33 0.0 0 inf 2\n", " 42 0.0 0 inf 1\n", " 51 0.0 0 inf 1\n", " 57 0.0 0 inf 0\n", " 0 1.0 1 1.0 10\n", " 1 4.0 4 1.0 10\n" ] }, { "data": { "application/vnd.plotly.v1+json": { "config": { "plotlyServerURL": "https://plot.ly" }, "data": [ { "hovertemplate": "Task %{text}
Dataset 1: %{x:.1f}
Dataset 2: %{y:.1f}
", "marker": { "color": "blue", "opacity": 0.6, "size": 8 }, "mode": "markers", "name": "Duration Comparison", "text": { "bdata": "AAAAAAAAAAAAAAAAAADwPwAAAAAAAABAAAAAAAAACEAAAAAAAAAQQAAAAAAAABRAAAAAAAAAGEAAAAAAAAAcQAAAAAAAACBAAAAAAAAAIkAAAAAAAAAkQAAAAAAAACZAAAAAAAAAKEAAAAAAAAAqQAAAAAAAACxAAAAAAAAALkAAAAAAAAAwQAAAAAAAADFAAAAAAAAAMkAAAAAAAAAzQAAAAAAAADRAAAAAAAAANUAAAAAAAAA2QAAAAAAAADdAAAAAAAAAOEAAAAAAAAA5QAAAAAAAADpAAAAAAAAAO0AAAAAAAAA8QAAAAAAAAD1AAAAAAAAAPkAAAAAAAAA/QAAAAAAAAEBAAAAAAACAQEAAAAAAAABBQAAAAAAAgEFAAAAAAAAAQkAAAAAAAIBCQAAAAAAAAENAAAAAAACAQ0AAAAAAAABEQAAAAAAAgERAAAAAAAAARUAAAAAAAIBFQAAAAAAAAEZAAAAAAACARkAAAAAAAABHQAAAAAAAgEdAAAAAAAAASEAAAAAAAIBIQAAAAAAAAElAAAAAAACASUAAAAAAAABKQAAAAAAAgEpAAAAAAAAAS0AAAAAAAIBLQAAAAAAAAExAAAAAAACATEAAAAAAAABNQAAAAAAAgE1AAAAAAAAATkAAAAAAAIBOQAAAAAAAAE9AAAAAAACAT0AAAAAAAABQQAAAAAAAQFBAAAAAAACAUEAAAAAAAMBQQAAAAAAAAFFAAAAAAABAUUA=", "dtype": "f8" }, "type": "scatter", "x": { "bdata": "AAAAAAAA8D8AAAAAAAAQQAAAAAAAABxAAAAAAACAVkAAAAAAAAAUQAAAAAAAAAAAAAAAAACAVkAAAAAAAAAUQAAAAAAAAPA/AAAAAAAACEAAAAAAAABXQAAAAAAAABRAAAAAAAAAAAAAAAAAAAAcQAAAAAAAAPA/AAAAAAAAAAAAAAAAAIBAQAAAAAAAAPA/AAAAAAAAAEAAAAAAAADwPwAAAAAAAABAAAAAAAAAAEAAAAAAAADwPwAAAAAAAPA/AAAAAAAAAAAAAAAAAADwPwAAAAAAAPA/AAAAAAAAAEAAAAAAAADwPwAAAAAAAABAAAAAAAAAAEAAAAAAAADwPwAAAAAAAPA/AAAAAAAAAAAAAAAAAIBAQAAAAAAAAPA/AAAAAAAAAEAAAAAAAADwPwAAAAAAAABAAAAAAAAAAEAAAAAAAADwPwAAAAAAAPA/AAAAAAAAAAAAAAAAAADwPwAAAAAAAPA/AAAAAAAAAEAAAAAAAADwPwAAAAAAAABAAAAAAAAAAEAAAAAAAADwPwAAAAAAAPA/AAAAAAAAAAAAAAAAAIBCQAAAAAAAAABAAAAAAAAAIEAAAAAAAAAIQAAAAAAAAPA/AAAAAAAAAAAAAAAAAAAAQAAAAAAAAPA/AAAAAAAAAEAAAAAAAAAAQAAAAAAAAPA/AAAAAAAAAEAAAAAAAAAzQAAAAAAAAABAAAAAAAAAAEAAAAAAAADwPwAAAAAAAPA/AAAAAAAA8D8=", "dtype": "f8" }, "xaxis": "x", "y": { "bdata": "AQQHJQUASQUBAycFAAcBAA4BAgECAgEBAAEBAgECAgEBAA4BAgECAgEBAAEBAgECAgEBABMCCAMBAAIBAgIBAgkCAgEBAQ==", "dtype": "i1" }, "yaxis": "y" }, { "line": { "color": "red", "dash": "dash" }, "mode": "lines", "name": "Equal Duration", "showlegend": false, "type": "scatter", "x": [ 0, 92 ], "xaxis": "x", "y": [ 0, 92 ], "yaxis": "y" }, { "marker": { "color": [ "red", "red", "red", "red", "red", "red", "red", "red", "red", "red", "red", "red", "red", "red", "red", "red", "red", "red", "red", "red", "red", "red", "red", "red", "red", "red", "red", "red", "red", "red", "red", "red", "red", "red", "red", "red", "red", "red", "red", "red", "red", "red", "red", "red", "red", "red", "red", "red", "red", "red", "red", "red", "red", "red", "red", "red", "red", "red", "red", "red", "red", "red", "red", "red", "red", "red", "red", "red", "red", "red" ] }, "name": "Duration Difference", "type": "bar", "x": { "bdata": "AAECAwQFBgcICQoLDA0ODxAREhMUFRYXGBkaGxwdHh8gISIjJCUmJygpKissLS4vMDEyMzQ1Njc4OTo7PD0+P0BBQkNERQ==", "dtype": "i1" }, "xaxis": "x2", "y": { "bdata": "AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACASsAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAMcAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAIBKwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAzwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAzwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAywAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAkwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA=", "dtype": "f8" }, "yaxis": "y2" }, { "hovertemplate": "Task %{text}
Dataset 1: %{x:.1f}
Dataset 2: %{y:.1f}
", "marker": { "color": "orange", "opacity": 0.6, "size": 8 }, "mode": "markers", "name": "Start Time Comparison", "text": { "bdata": "AAAAAAAAAAAAAAAAAADwPwAAAAAAAABAAAAAAAAACEAAAAAAAAAQQAAAAAAAABRAAAAAAAAAGEAAAAAAAAAcQAAAAAAAACBAAAAAAAAAIkAAAAAAAAAkQAAAAAAAACZAAAAAAAAAKEAAAAAAAAAqQAAAAAAAACxAAAAAAAAALkAAAAAAAAAwQAAAAAAAADFAAAAAAAAAMkAAAAAAAAAzQAAAAAAAADRAAAAAAAAANUAAAAAAAAA2QAAAAAAAADdAAAAAAAAAOEAAAAAAAAA5QAAAAAAAADpAAAAAAAAAO0AAAAAAAAA8QAAAAAAAAD1AAAAAAAAAPkAAAAAAAAA/QAAAAAAAAEBAAAAAAACAQEAAAAAAAABBQAAAAAAAgEFAAAAAAAAAQkAAAAAAAIBCQAAAAAAAAENAAAAAAACAQ0AAAAAAAABEQAAAAAAAgERAAAAAAAAARUAAAAAAAIBFQAAAAAAAAEZAAAAAAACARkAAAAAAAABHQAAAAAAAgEdAAAAAAAAASEAAAAAAAIBIQAAAAAAAAElAAAAAAACASUAAAAAAAABKQAAAAAAAgEpAAAAAAAAAS0AAAAAAAIBLQAAAAAAAAExAAAAAAACATEAAAAAAAABNQAAAAAAAgE1AAAAAAAAATkAAAAAAAIBOQAAAAAAAAE9AAAAAAACAT0AAAAAAAABQQAAAAAAAQFBAAAAAAACAUEAAAAAAAMBQQAAAAAAAAFFAAAAAAABAUUA=", "dtype": "f8" }, "type": "scatter", "x": { "bdata": "AAAAAAAAAAAAAAAAAADwPwAAAAAAABRAAAAAAAAAKEAAAAAAAEBYQAAAAAAAgFlAAAAAAACAWUAAAAAAAGBpQAAAAAAAgFlAAAAAAADAWUAAAAAAAIBaQAAAAAAAwGhAAAAAAAAAakAAAAAAACBqQAAAAAAAAGpAAAAAAAAAa0AAAAAAAABrQAAAAAAAwG5AAAAAAADgbkAAAAAAACBuQAAAAAAAQG5AAAAAAACAbkAAAAAAAOBtQAAAAAAAAG5AAAAAAAAgb0AAAAAAADBwQAAAAAAAAHBAAAAAAAAQcEAAAAAAAGBvQAAAAAAAgG9AAAAAAADAb0AAAAAAACBvQAAAAAAAQG9AAAAAAABAcEAAAAAAAEBwQAAAAAAAIHJAAAAAAAAwckAAAAAAANBxQAAAAAAA4HFAAAAAAAAAckAAAAAAALBxQAAAAAAAwHFAAAAAAABQckAAAAAAAPByQAAAAAAAwHJAAAAAAADQckAAAAAAAHByQAAAAAAAgHJAAAAAAACgckAAAAAAAFByQAAAAAAAYHJAAAAAAAAAc0AAAAAAAABzQAAAAAAAEHNAAAAAAAAwc0AAAAAAALBzQAAAAAAAAHNAAAAAAABQdUAAAAAAAEB3QAAAAAAA8HZAAAAAAAAAd0AAAAAAACB3QAAAAAAAUHVAAAAAAABgdUAAAAAAAIB1QAAAAAAAsHZAAAAAAADQdkAAAAAAAFB1QAAAAAAAYHVAAAAAAABgd0A=", "dtype": "f8" }, "xaxis": "x3", "y": { "bdata": "AAABAAUADAAMADEAMQB6ADEAMgA1AFwAfwB/AIYAhwCHAIcAiQCMAI0AjwCIAIsAlQCVAJsAngCXAJkAnACWAJgAoACgAKAAogClAKYAqAChAKQArgCuALQAtwCwALIAtQCvALEAuQC5ALkAvADEALsAzADMAM8A0QDTAMwAzQDPANgA2gDOANAA3AA=", "dtype": "i2" }, "yaxis": "y3" }, { "marker": { "color": "purple", "opacity": 0.7 }, "name": "Duration Ratio Distribution", "nbinsx": 20, "type": "histogram", "x": { "bdata": "AAAAAAAA8D8AAAAAAADwPwAAAAAAAPA/+qRP+qRP2j8AAAAAAADwPwAAAAAAAPB/Sp/0SZ/06T8AAAAAAADwPwAAAAAAAPA/AAAAAAAA8D+ykIUsZCHbPwAAAAAAAPA/AAAAAAAA8H8AAAAAAADwPwAAAAAAAPA/AAAAAAAA8H8nm2yyySbbPwAAAAAAAPA/AAAAAAAA8D8AAAAAAADwPwAAAAAAAPA/AAAAAAAA8D8AAAAAAADwPwAAAAAAAPA/AAAAAAAA8H8AAAAAAADwPwAAAAAAAPA/AAAAAAAA8D8AAAAAAADwPwAAAAAAAPA/AAAAAAAA8D8AAAAAAADwPwAAAAAAAPA/AAAAAAAA8H8nm2yyySbbPwAAAAAAAPA/AAAAAAAA8D8AAAAAAADwPwAAAAAAAPA/AAAAAAAA8D8AAAAAAADwPwAAAAAAAPA/AAAAAAAA8H8AAAAAAADwPwAAAAAAAPA/AAAAAAAA8D8AAAAAAADwPwAAAAAAAPA/AAAAAAAA8D8AAAAAAADwPwAAAAAAAPA/AAAAAAAA8H/rBlPks27gPwAAAAAAAPA/AAAAAAAA8D8AAAAAAADwPwAAAAAAAPA/AAAAAAAA8H8AAAAAAADwPwAAAAAAAPA/AAAAAAAA8D8AAAAAAADwPwAAAAAAAPA/AAAAAAAA8D8N5TWU11DePwAAAAAAAPA/AAAAAAAA8D8AAAAAAADwPwAAAAAAAPA/AAAAAAAA8D8=", "dtype": "f8" }, "xaxis": "x4", "yaxis": "y4" } ], "layout": { "annotations": [ { "font": { "size": 16 }, "showarrow": false, "text": "Duration Comparison", "x": 0.225, "xanchor": "center", "xref": "paper", "y": 1, "yanchor": "bottom", "yref": "paper" }, { "font": { "size": 16 }, "showarrow": false, "text": "Duration Differences", "x": 0.775, "xanchor": "center", "xref": "paper", "y": 1, "yanchor": "bottom", "yref": "paper" }, { "font": { "size": 16 }, "showarrow": false, "text": "Start Time Comparison", "x": 0.225, "xanchor": "center", "xref": "paper", "y": 0.375, "yanchor": "bottom", "yref": "paper" }, { "font": { "size": 16 }, "showarrow": false, "text": "Duration Ratio Distribution", "x": 0.775, "xanchor": "center", "xref": "paper", "y": 0.375, "yanchor": "bottom", "yref": "paper" } ], "height": 800, "showlegend": false, "template": { "data": { "bar": [ { "error_x": { "color": "#2a3f5f" }, "error_y": { "color": "#2a3f5f" }, "marker": { "line": { "color": "#E5ECF6", "width": 0.5 }, "pattern": { "fillmode": "overlay", "size": 10, "solidity": 0.2 } }, "type": "bar" } ], "barpolar": [ { "marker": { "line": { "color": "#E5ECF6", "width": 0.5 }, "pattern": { "fillmode": "overlay", "size": 10, "solidity": 0.2 } }, "type": "barpolar" } ], "carpet": [ { "aaxis": { "endlinecolor": "#2a3f5f", "gridcolor": "white", "linecolor": "white", "minorgridcolor": "white", "startlinecolor": "#2a3f5f" }, "baxis": { "endlinecolor": "#2a3f5f", "gridcolor": "white", "linecolor": "white", "minorgridcolor": "white", "startlinecolor": "#2a3f5f" }, "type": "carpet" } ], "choropleth": [ { "colorbar": { "outlinewidth": 0, "ticks": "" }, "type": "choropleth" } ], "contour": [ { "colorbar": { "outlinewidth": 0, "ticks": "" }, "colorscale": [ [ 0, "#0d0887" ], [ 0.1111111111111111, "#46039f" ], [ 0.2222222222222222, "#7201a8" ], [ 0.3333333333333333, "#9c179e" ], [ 0.4444444444444444, "#bd3786" ], [ 0.5555555555555556, "#d8576b" ], [ 0.6666666666666666, "#ed7953" ], [ 0.7777777777777778, "#fb9f3a" ], [ 0.8888888888888888, "#fdca26" ], [ 1, "#f0f921" ] ], "type": "contour" } ], "contourcarpet": [ { "colorbar": { "outlinewidth": 0, "ticks": "" }, "type": "contourcarpet" } ], "heatmap": [ { "colorbar": { "outlinewidth": 0, "ticks": "" }, "colorscale": [ [ 0, "#0d0887" ], [ 0.1111111111111111, "#46039f" ], [ 0.2222222222222222, "#7201a8" ], [ 0.3333333333333333, "#9c179e" ], [ 0.4444444444444444, "#bd3786" ], [ 0.5555555555555556, "#d8576b" ], [ 0.6666666666666666, "#ed7953" ], [ 0.7777777777777778, "#fb9f3a" ], [ 0.8888888888888888, "#fdca26" ], [ 1, "#f0f921" ] ], "type": "heatmap" } ], "histogram": [ { "marker": { "pattern": { "fillmode": "overlay", "size": 10, "solidity": 0.2 } }, "type": "histogram" } ], "histogram2d": [ { "colorbar": { "outlinewidth": 0, "ticks": "" }, "colorscale": [ [ 0, "#0d0887" ], [ 0.1111111111111111, "#46039f" ], [ 0.2222222222222222, "#7201a8" ], [ 0.3333333333333333, "#9c179e" ], [ 0.4444444444444444, "#bd3786" ], [ 0.5555555555555556, "#d8576b" ], [ 0.6666666666666666, "#ed7953" ], [ 0.7777777777777778, "#fb9f3a" ], [ 0.8888888888888888, "#fdca26" ], [ 1, "#f0f921" ] ], "type": "histogram2d" } ], "histogram2dcontour": [ { "colorbar": { "outlinewidth": 0, "ticks": "" }, "colorscale": [ [ 0, "#0d0887" ], [ 0.1111111111111111, "#46039f" ], [ 0.2222222222222222, "#7201a8" ], [ 0.3333333333333333, "#9c179e" ], [ 0.4444444444444444, "#bd3786" ], [ 0.5555555555555556, "#d8576b" ], [ 0.6666666666666666, "#ed7953" ], [ 0.7777777777777778, "#fb9f3a" ], [ 0.8888888888888888, "#fdca26" ], [ 1, "#f0f921" ] ], "type": "histogram2dcontour" } ], "mesh3d": [ { "colorbar": { "outlinewidth": 0, "ticks": "" }, "type": "mesh3d" } ], "parcoords": [ { "line": { "colorbar": { "outlinewidth": 0, "ticks": "" } }, "type": "parcoords" } ], "pie": [ { "automargin": true, "type": "pie" } ], "scatter": [ { "fillpattern": { "fillmode": "overlay", "size": 10, "solidity": 0.2 }, "type": "scatter" } ], "scatter3d": [ { "line": { "colorbar": { "outlinewidth": 0, "ticks": "" } }, "marker": { "colorbar": { "outlinewidth": 0, "ticks": "" } }, "type": "scatter3d" } ], "scattercarpet": [ { "marker": { "colorbar": { "outlinewidth": 0, "ticks": "" } }, "type": "scattercarpet" } ], "scattergeo": [ { "marker": { "colorbar": { "outlinewidth": 0, "ticks": "" } }, "type": "scattergeo" } ], "scattergl": [ { "marker": { "colorbar": { "outlinewidth": 0, "ticks": "" } }, "type": "scattergl" } ], "scattermap": [ { "marker": { "colorbar": { "outlinewidth": 0, "ticks": "" } }, "type": "scattermap" } ], "scattermapbox": [ { "marker": { "colorbar": { "outlinewidth": 0, "ticks": "" } }, "type": "scattermapbox" } ], "scatterpolar": [ { "marker": { "colorbar": { "outlinewidth": 0, "ticks": "" } }, "type": "scatterpolar" } ], "scatterpolargl": [ { "marker": { "colorbar": { "outlinewidth": 0, "ticks": "" } }, "type": "scatterpolargl" } ], "scatterternary": [ { "marker": { "colorbar": { "outlinewidth": 0, "ticks": "" } }, "type": "scatterternary" } ], "surface": [ { "colorbar": { "outlinewidth": 0, "ticks": "" }, "colorscale": [ [ 0, "#0d0887" ], [ 0.1111111111111111, "#46039f" ], [ 0.2222222222222222, "#7201a8" ], [ 0.3333333333333333, "#9c179e" ], [ 0.4444444444444444, "#bd3786" ], [ 0.5555555555555556, "#d8576b" ], [ 0.6666666666666666, "#ed7953" ], [ 0.7777777777777778, "#fb9f3a" ], [ 0.8888888888888888, "#fdca26" ], [ 1, "#f0f921" ] ], "type": "surface" } ], "table": [ { "cells": { "fill": { "color": "#EBF0F8" }, "line": { "color": "white" } }, "header": { "fill": { "color": "#C8D4E3" }, "line": { "color": "white" } }, "type": "table" } ] }, "layout": { "annotationdefaults": { "arrowcolor": "#2a3f5f", "arrowhead": 0, "arrowwidth": 1 }, "autotypenumbers": "strict", "coloraxis": { "colorbar": { "outlinewidth": 0, "ticks": "" } }, "colorscale": { "diverging": [ [ 0, "#8e0152" ], [ 0.1, "#c51b7d" ], [ 0.2, "#de77ae" ], [ 0.3, "#f1b6da" ], [ 0.4, "#fde0ef" ], [ 0.5, "#f7f7f7" ], [ 0.6, "#e6f5d0" ], [ 0.7, "#b8e186" ], [ 0.8, "#7fbc41" ], [ 0.9, "#4d9221" ], [ 1, "#276419" ] ], "sequential": [ [ 0, "#0d0887" ], [ 0.1111111111111111, "#46039f" ], [ 0.2222222222222222, "#7201a8" ], [ 0.3333333333333333, "#9c179e" ], [ 0.4444444444444444, "#bd3786" ], [ 0.5555555555555556, "#d8576b" ], [ 0.6666666666666666, "#ed7953" ], [ 0.7777777777777778, "#fb9f3a" ], [ 0.8888888888888888, "#fdca26" ], [ 1, "#f0f921" ] ], "sequentialminus": [ [ 0, "#0d0887" ], [ 0.1111111111111111, "#46039f" ], [ 0.2222222222222222, "#7201a8" ], [ 0.3333333333333333, "#9c179e" ], [ 0.4444444444444444, "#bd3786" ], [ 0.5555555555555556, "#d8576b" ], [ 0.6666666666666666, "#ed7953" ], [ 0.7777777777777778, "#fb9f3a" ], [ 0.8888888888888888, "#fdca26" ], [ 1, "#f0f921" ] ] }, "colorway": [ "#636efa", "#EF553B", "#00cc96", "#ab63fa", "#FFA15A", "#19d3f3", "#FF6692", "#B6E880", "#FF97FF", "#FECB52" ], "font": { "color": "#2a3f5f" }, "geo": { "bgcolor": "white", "lakecolor": "white", "landcolor": "#E5ECF6", "showlakes": true, "showland": true, "subunitcolor": "white" }, "hoverlabel": { "align": "left" }, "hovermode": "closest", "mapbox": { "style": "light" }, "paper_bgcolor": "white", "plot_bgcolor": "#E5ECF6", "polar": { "angularaxis": { "gridcolor": "white", "linecolor": "white", "ticks": "" }, "bgcolor": "#E5ECF6", "radialaxis": { "gridcolor": "white", "linecolor": "white", "ticks": "" } }, "scene": { "xaxis": { "backgroundcolor": "#E5ECF6", "gridcolor": "white", "gridwidth": 2, "linecolor": "white", "showbackground": true, "ticks": "", "zerolinecolor": "white" }, "yaxis": { "backgroundcolor": "#E5ECF6", "gridcolor": "white", "gridwidth": 2, "linecolor": "white", "showbackground": true, "ticks": "", "zerolinecolor": "white" }, "zaxis": { "backgroundcolor": "#E5ECF6", "gridcolor": "white", "gridwidth": 2, "linecolor": "white", "showbackground": true, "ticks": "", "zerolinecolor": "white" } }, "shapedefaults": { "line": { "color": "#2a3f5f" } }, "ternary": { "aaxis": { "gridcolor": "white", "linecolor": "white", "ticks": "" }, "baxis": { "gridcolor": "white", "linecolor": "white", "ticks": "" }, "bgcolor": "#E5ECF6", "caxis": { "gridcolor": "white", "linecolor": "white", "ticks": "" } }, "title": { "x": 0.05 }, "xaxis": { "automargin": true, "gridcolor": "white", "linecolor": "white", "ticks": "", "title": { "standoff": 15 }, "zerolinecolor": "white", "zerolinewidth": 2 }, "yaxis": { "automargin": true, "gridcolor": "white", "linecolor": "white", "ticks": "", "title": { "standoff": 15 }, "zerolinecolor": "white", "zerolinewidth": 2 } } }, "title": { "text": "Detailed Comparison Analysis" }, "xaxis": { "anchor": "y", "domain": [ 0, 0.45 ], "title": { "text": "Dataset 1 Duration" } }, "xaxis2": { "anchor": "y2", "domain": [ 0.55, 1 ], "title": { "text": "Task ID" } }, "xaxis3": { "anchor": "y3", "domain": [ 0, 0.45 ], "title": { "text": "Dataset 1 Start Time" } }, "xaxis4": { "anchor": "y4", "domain": [ 0.55, 1 ], "title": { "text": "Duration Ratio" } }, "yaxis": { "anchor": "x", "domain": [ 0.625, 1 ], "title": { "text": "Dataset 2 Duration" } }, "yaxis2": { "anchor": "x2", "domain": [ 0.625, 1 ], "title": { "text": "Duration Difference" } }, "yaxis3": { "anchor": "x3", "domain": [ 0, 0.375 ], "title": { "text": "Dataset 2 Start Time" } }, "yaxis4": { "anchor": "x4", "domain": [ 0, 0.375 ], "title": { "text": "Frequency" } } } } }, "metadata": {}, "output_type": "display_data" } ], "source": [ "def analyze_differences():\n", " \"\"\"Analyze the differences between the two datasets\"\"\"\n", " \n", " # Merge datasets by Task_ID for comparison\n", " common_tasks = set(df1['Task_ID']) & set(df2['Task_ID'])\n", " \n", " comparison_data = []\n", " \n", " for task_id in common_tasks:\n", " task1 = df1[df1['Task_ID'] == task_id].iloc[0]\n", " task2 = df2[df2['Task_ID'] == task_id].iloc[0]\n", " \n", " comparison_data.append({\n", " 'Task_ID': task_id,\n", " 'Duration_1': task1['Duration'],\n", " 'Duration_2': task2['Duration'],\n", " 'Duration_Diff': task2['Duration'] - task1['Duration'],\n", " 'Duration_Ratio': task2['Duration'] / task1['Duration'] if task1['Duration'] > 0 else float('inf'),\n", " 'Start_1_Norm': task1['Start_Normalized'],\n", " 'Start_2_Norm': task2['Start_Normalized'],\n", " 'Start_Diff_Norm': task2['Start_Normalized'] - task1['Start_Normalized'],\n", " 'Accelerator': task2.get('accelerator', 'N/A')\n", " })\n", " \n", " comparison_df = pd.DataFrame(comparison_data)\n", " \n", " print(\"=== DETAILED COMPARISON ANALYSIS ===\")\n", " print(f\"Common tasks between datasets: {len(common_tasks)}\")\n", " print(f\"Tasks only in Dataset 1: {len(set(df1['Task_ID']) - set(df2['Task_ID']))}\")\n", " print(f\"Tasks only in Dataset 2: {len(set(df2['Task_ID']) - set(df1['Task_ID']))}\")\n", " \n", " print(\"\\n=== DURATION COMPARISON ===\")\n", " print(f\"Average duration difference: {comparison_df['Duration_Diff'].mean():.2f}\")\n", " print(f\"Median duration difference: {comparison_df['Duration_Diff'].median():.2f}\")\n", " print(f\"Max duration difference: {comparison_df['Duration_Diff'].max():.2f}\")\n", " print(f\"Min duration difference: {comparison_df['Duration_Diff'].min():.2f}\")\n", " \n", " print(\"\\n=== START TIME COMPARISON (Normalized) ===\")\n", " print(f\"Average start time difference: {comparison_df['Start_Diff_Norm'].mean():.2f}\")\n", " print(f\"Median start time difference: {comparison_df['Start_Diff_Norm'].median():.2f}\")\n", " \n", " print(\"\\n=== TASKS WITH LARGEST DIFFERENCES ===\")\n", " print(\"Top 10 tasks with largest duration differences:\")\n", " top_diff = comparison_df.nlargest(10, 'Duration_Diff')[['Task_ID', 'Duration_1', 'Duration_2', 'Duration_Diff', 'Accelerator']]\n", " print(top_diff.to_string(index=False))\n", " \n", " print(\"\\nTop 10 tasks with largest duration ratios:\")\n", " top_ratio = comparison_df.nlargest(10, 'Duration_Ratio')[['Task_ID', 'Duration_1', 'Duration_2', 'Duration_Ratio', 'Accelerator']]\n", " print(top_ratio.to_string(index=False))\n", " \n", " return comparison_df\n", "\n", "def create_difference_plots(comparison_df):\n", " \"\"\"Create plots showing the differences between datasets\"\"\"\n", " \n", " fig = make_subplots(\n", " rows=2, cols=2,\n", " subplot_titles=('Duration Comparison', 'Duration Differences', 'Start Time Comparison', 'Duration Ratio Distribution'),\n", " specs=[[{\"secondary_y\": False}, {\"secondary_y\": False}],\n", " [{\"secondary_y\": False}, {\"secondary_y\": False}]]\n", " )\n", " \n", " # Duration comparison scatter plot\n", " fig.add_trace(\n", " go.Scatter(\n", " x=comparison_df['Duration_1'],\n", " y=comparison_df['Duration_2'],\n", " mode='markers',\n", " name='Duration Comparison',\n", " text=comparison_df['Task_ID'],\n", " hovertemplate='Task %{text}
' +\n", " 'Dataset 1: %{x:.1f}
' +\n", " 'Dataset 2: %{y:.1f}
' +\n", " '',\n", " marker=dict(size=8, color='blue', opacity=0.6)\n", " ),\n", " row=1, col=1\n", " )\n", " \n", " # Add diagonal line for reference\n", " max_duration = max(comparison_df['Duration_1'].max(), comparison_df['Duration_2'].max())\n", " fig.add_trace(\n", " go.Scatter(\n", " x=[0, max_duration],\n", " y=[0, max_duration],\n", " mode='lines',\n", " name='Equal Duration',\n", " line=dict(dash='dash', color='red'),\n", " showlegend=False\n", " ),\n", " row=1, col=1\n", " )\n", " \n", " # Duration differences\n", " fig.add_trace(\n", " go.Bar(\n", " x=comparison_df['Task_ID'],\n", " y=comparison_df['Duration_Diff'],\n", " name='Duration Difference',\n", " marker=dict(color=np.where(comparison_df['Duration_Diff'] > 0, 'green', 'red'))\n", " ),\n", " row=1, col=2\n", " )\n", " \n", " # Start time comparison\n", " fig.add_trace(\n", " go.Scatter(\n", " x=comparison_df['Start_1_Norm'],\n", " y=comparison_df['Start_2_Norm'],\n", " mode='markers',\n", " name='Start Time Comparison',\n", " text=comparison_df['Task_ID'],\n", " hovertemplate='Task %{text}
' +\n", " 'Dataset 1: %{x:.1f}
' +\n", " 'Dataset 2: %{y:.1f}
' +\n", " '',\n", " marker=dict(size=8, color='orange', opacity=0.6)\n", " ),\n", " row=2, col=1\n", " )\n", " \n", " # Duration ratio histogram\n", " fig.add_trace(\n", " go.Histogram(\n", " x=comparison_df['Duration_Ratio'],\n", " nbinsx=20,\n", " name='Duration Ratio Distribution',\n", " marker=dict(color='purple', opacity=0.7)\n", " ),\n", " row=2, col=2\n", " )\n", " \n", " fig.update_layout(\n", " title=\"Detailed Comparison Analysis\",\n", " height=800,\n", " showlegend=False\n", " )\n", " \n", " fig.update_xaxes(title_text=\"Dataset 1 Duration\", row=1, col=1)\n", " fig.update_yaxes(title_text=\"Dataset 2 Duration\", row=1, col=1)\n", " fig.update_xaxes(title_text=\"Task ID\", row=1, col=2)\n", " fig.update_yaxes(title_text=\"Duration Difference\", row=1, col=2)\n", " fig.update_xaxes(title_text=\"Dataset 1 Start Time\", row=2, col=1)\n", " fig.update_yaxes(title_text=\"Dataset 2 Start Time\", row=2, col=1)\n", " fig.update_xaxes(title_text=\"Duration Ratio\", row=2, col=2)\n", " fig.update_yaxes(title_text=\"Frequency\", row=2, col=2)\n", " \n", " return fig\n", "\n", "# Perform the analysis\n", "comparison_df = analyze_differences()\n", "\n", "# Create and display difference plots\n", "diff_fig = create_difference_plots(comparison_df)\n", "diff_fig.show()" ] }, { "cell_type": "code", "execution_count": 32, "id": "93d284d2", "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "=== COMPREHENSIVE SUMMARY TABLE ===\n", " Metric Task Schedule Simulation Results\n", " Total Tasks 70 71\n", " Total Execution Time 375.00 221.00\n", " Average Task Duration 7.23 4.46\n", " Median Task Duration 1.50 1.00\n", " Min Task Duration 0.00 0.00\n", " Max Task Duration 92.00 73.00\n", "Tasks with Zero Duration 8 9\n", " Task Duration Std Dev 19.14 10.70\n", "\n", "=== TASK EXECUTION PATTERN ANALYSIS ===\n", "Task Schedule:\n", " - Overlapping task pairs: 24\n", " - Total task pairs: 2415\n", " - Parallelism ratio: 0.010\n", "Simulation Results:\n", " - Overlapping task pairs: 30\n", " - Total task pairs: 2485\n", " - Parallelism ratio: 0.012\n", "\n", "=== ACCELERATOR USAGE (Simulation Results) ===\n", "Tasks per accelerator:\n", " Accelerator 0: 14 tasks\n", " Accelerator 1: 18 tasks\n", " Accelerator 2: 18 tasks\n", " Accelerator 3: 7 tasks\n", " Accelerator 4: 3 tasks\n", " Accelerator 6: 3 tasks\n", " Accelerator 7: 3 tasks\n", " Accelerator 10: 5 tasks\n", "Simulation Results:\n", " - Overlapping task pairs: 30\n", " - Total task pairs: 2485\n", " - Parallelism ratio: 0.012\n", "\n", "=== ACCELERATOR USAGE (Simulation Results) ===\n", "Tasks per accelerator:\n", " Accelerator 0: 14 tasks\n", " Accelerator 1: 18 tasks\n", " Accelerator 2: 18 tasks\n", " Accelerator 3: 7 tasks\n", " Accelerator 4: 3 tasks\n", " Accelerator 6: 3 tasks\n", " Accelerator 7: 3 tasks\n", " Accelerator 10: 5 tasks\n" ] }, { "data": { "application/vnd.plotly.v1+json": { "config": { "plotlyServerURL": "https://plot.ly" }, "data": [ { "fill": "toself", "fillcolor": "rgba(0, 100, 255, 0.6)", "hovertemplate": "Schedule Task 0
Start: 0.0
End: 1.0
Duration: 1.0
", "legendgroup": "schedule", "line": { "color": "blue", "width": 1 }, "name": "Schedule Task 0", "showlegend": true, "type": "scatter", "x": [ 0, 1, 1, 0, 0 ], "y": [ -0.35, -0.35, -0.05, -0.05, -0.35 ] }, { "fill": "toself", "fillcolor": "rgba(0, 100, 255, 0.6)", "hovertemplate": "Schedule Task 1
Start: 1.0
End: 5.0
Duration: 4.0
", "legendgroup": "schedule", "line": { "color": "blue", "width": 1 }, "name": "Schedule Task 1", "showlegend": false, "type": "scatter", "x": [ 1, 5, 5, 1, 1 ], "y": [ 0.65, 0.65, 0.95, 0.95, 0.65 ] }, { "fill": "toself", "fillcolor": "rgba(0, 100, 255, 0.6)", "hovertemplate": "Schedule Task 2
Start: 5.0
End: 12.0
Duration: 7.0
", "legendgroup": "schedule", "line": { "color": "blue", "width": 1 }, "name": "Schedule Task 2", "showlegend": false, "type": "scatter", "x": [ 5, 12, 12, 5, 5 ], "y": [ 1.65, 1.65, 1.95, 1.95, 1.65 ] }, { "fill": "toself", "fillcolor": "rgba(0, 100, 255, 0.6)", "hovertemplate": "Schedule Task 3
Start: 12.0
End: 102.0
Duration: 90.0
", "legendgroup": "schedule", "line": { "color": "blue", "width": 1 }, "name": "Schedule Task 3", "showlegend": false, "type": "scatter", "x": [ 12, 102, 102, 12, 12 ], "y": [ 2.65, 2.65, 2.95, 2.95, 2.65 ] }, { "fill": "toself", "fillcolor": "rgba(0, 100, 255, 0.6)", "hovertemplate": "Schedule Task 4
Start: 97.0
End: 102.0
Duration: 5.0
", "legendgroup": "schedule", "line": { "color": "blue", "width": 1 }, "name": "Schedule Task 4", "showlegend": false, "type": "scatter", "x": [ 97, 102, 102, 97, 97 ], "y": [ 3.65, 3.65, 3.95, 3.95, 3.65 ] }, { "fill": "toself", "fillcolor": "rgba(0, 100, 255, 0.6)", "hovertemplate": "Schedule Task 5
Start: 102.0
End: 102.0
Duration: 0.0
", "legendgroup": "schedule", "line": { "color": "blue", "width": 1 }, "name": "Schedule Task 5", "showlegend": false, "type": "scatter", "x": [ 102, 102, 102, 102, 102 ], "y": [ 4.65, 4.65, 4.95, 4.95, 4.65 ] }, { "fill": "toself", "fillcolor": "rgba(0, 100, 255, 0.6)", "hovertemplate": "Schedule Task 6
Start: 102.0
End: 192.0
Duration: 90.0
", "legendgroup": "schedule", "line": { "color": "blue", "width": 1 }, "name": "Schedule Task 6", "showlegend": false, "type": "scatter", "x": [ 102, 192, 192, 102, 102 ], "y": [ 5.65, 5.65, 5.95, 5.95, 5.65 ] }, { "fill": "toself", "fillcolor": "rgba(0, 100, 255, 0.6)", "hovertemplate": "Schedule Task 7
Start: 203.0
End: 208.0
Duration: 5.0
", "legendgroup": "schedule", "line": { "color": "blue", "width": 1 }, "name": "Schedule Task 7", "showlegend": false, "type": "scatter", "x": [ 203, 208, 208, 203, 203 ], "y": [ 6.65, 6.65, 6.95, 6.95, 6.65 ] }, { "fill": "toself", "fillcolor": "rgba(0, 100, 255, 0.6)", "hovertemplate": "Schedule Task 8
Start: 102.0
End: 103.0
Duration: 1.0
", "legendgroup": "schedule", "line": { "color": "blue", "width": 1 }, "name": "Schedule Task 8", "showlegend": false, "type": "scatter", "x": [ 102, 103, 103, 102, 102 ], "y": [ 7.65, 7.65, 7.95, 7.95, 7.65 ] }, { "fill": "toself", "fillcolor": "rgba(0, 100, 255, 0.6)", "hovertemplate": "Schedule Task 9
Start: 103.0
End: 106.0
Duration: 3.0
", "legendgroup": "schedule", "line": { "color": "blue", "width": 1 }, "name": "Schedule Task 9", "showlegend": false, "type": "scatter", "x": [ 103, 106, 106, 103, 103 ], "y": [ 8.65, 8.65, 8.95, 8.95, 8.65 ] }, { "fill": "toself", "fillcolor": "rgba(0, 100, 255, 0.6)", "hovertemplate": "Schedule Task 10
Start: 106.0
End: 198.0
Duration: 92.0
", "legendgroup": "schedule", "line": { "color": "blue", "width": 1 }, "name": "Schedule Task 10", "showlegend": false, "type": "scatter", "x": [ 106, 198, 198, 106, 106 ], "y": [ 9.65, 9.65, 9.95, 9.95, 9.65 ] }, { "fill": "toself", "fillcolor": "rgba(0, 100, 255, 0.6)", "hovertemplate": "Schedule Task 11
Start: 198.0
End: 203.0
Duration: 5.0
", "legendgroup": "schedule", "line": { "color": "blue", "width": 1 }, "name": "Schedule Task 11", "showlegend": false, "type": "scatter", "x": [ 198, 203, 203, 198, 198 ], "y": [ 10.65, 10.65, 10.95, 10.95, 10.65 ] }, { "fill": "toself", "fillcolor": "rgba(0, 100, 255, 0.6)", "hovertemplate": "Schedule Task 12
Start: 208.0
End: 208.0
Duration: 0.0
", "legendgroup": "schedule", "line": { "color": "blue", "width": 1 }, "name": "Schedule Task 12", "showlegend": false, "type": "scatter", "x": [ 208, 208, 208, 208, 208 ], "y": [ 11.65, 11.65, 11.95, 11.95, 11.65 ] }, { "fill": "toself", "fillcolor": "rgba(0, 100, 255, 0.6)", "hovertemplate": "Schedule Task 13
Start: 209.0
End: 216.0
Duration: 7.0
", "legendgroup": "schedule", "line": { "color": "blue", "width": 1 }, "name": "Schedule Task 13", "showlegend": false, "type": "scatter", "x": [ 209, 216, 216, 209, 209 ], "y": [ 12.65, 12.65, 12.95, 12.95, 12.65 ] }, { "fill": "toself", "fillcolor": "rgba(0, 100, 255, 0.6)", "hovertemplate": "Schedule Task 14
Start: 208.0
End: 209.0
Duration: 1.0
", "legendgroup": "schedule", "line": { "color": "blue", "width": 1 }, "name": "Schedule Task 14", "showlegend": false, "type": "scatter", "x": [ 208, 209, 209, 208, 208 ], "y": [ 13.65, 13.65, 13.95, 13.95, 13.65 ] }, { "fill": "toself", "fillcolor": "rgba(0, 100, 255, 0.6)", "hovertemplate": "Schedule Task 15
Start: 216.0
End: 216.0
Duration: 0.0
", "legendgroup": "schedule", "line": { "color": "blue", "width": 1 }, "name": "Schedule Task 15", "showlegend": false, "type": "scatter", "x": [ 216, 216, 216, 216, 216 ], "y": [ 14.65, 14.65, 14.95, 14.95, 14.65 ] }, { "fill": "toself", "fillcolor": "rgba(0, 100, 255, 0.6)", "hovertemplate": "Schedule Task 16
Start: 216.0
End: 249.0
Duration: 33.0
", "legendgroup": "schedule", "line": { "color": "blue", "width": 1 }, "name": "Schedule Task 16", "showlegend": false, "type": "scatter", "x": [ 216, 249, 249, 216, 216 ], "y": [ 15.65, 15.65, 15.95, 15.95, 15.65 ] }, { "fill": "toself", "fillcolor": "rgba(0, 100, 255, 0.6)", "hovertemplate": "Schedule Task 17
Start: 246.0
End: 247.0
Duration: 1.0
", "legendgroup": "schedule", "line": { "color": "blue", "width": 1 }, "name": "Schedule Task 17", "showlegend": false, "type": "scatter", "x": [ 246, 247, 247, 246, 246 ], "y": [ 16.65, 16.65, 16.95, 16.95, 16.65 ] }, { "fill": "toself", "fillcolor": "rgba(0, 100, 255, 0.6)", "hovertemplate": "Schedule Task 18
Start: 247.0
End: 249.0
Duration: 2.0
", "legendgroup": "schedule", "line": { "color": "blue", "width": 1 }, "name": "Schedule Task 18", "showlegend": false, "type": "scatter", "x": [ 247, 249, 249, 247, 247 ], "y": [ 17.65, 17.65, 17.95, 17.95, 17.65 ] }, { "fill": "toself", "fillcolor": "rgba(0, 100, 255, 0.6)", "hovertemplate": "Schedule Task 19
Start: 241.0
End: 242.0
Duration: 1.0
", "legendgroup": "schedule", "line": { "color": "blue", "width": 1 }, "name": "Schedule Task 19", "showlegend": false, "type": "scatter", "x": [ 241, 242, 242, 241, 241 ], "y": [ 18.65, 18.65, 18.95, 18.95, 18.65 ] }, { "fill": "toself", "fillcolor": "rgba(0, 100, 255, 0.6)", "hovertemplate": "Schedule Task 20
Start: 242.0
End: 244.0
Duration: 2.0
", "legendgroup": "schedule", "line": { "color": "blue", "width": 1 }, "name": "Schedule Task 20", "showlegend": false, "type": "scatter", "x": [ 242, 244, 244, 242, 242 ], "y": [ 19.65, 19.65, 19.95, 19.95, 19.65 ] }, { "fill": "toself", "fillcolor": "rgba(0, 100, 255, 0.6)", "hovertemplate": "Schedule Task 21
Start: 244.0
End: 246.0
Duration: 2.0
", "legendgroup": "schedule", "line": { "color": "blue", "width": 1 }, "name": "Schedule Task 21", "showlegend": false, "type": "scatter", "x": [ 244, 246, 246, 244, 244 ], "y": [ 20.65, 20.65, 20.95, 20.95, 20.65 ] }, { "fill": "toself", "fillcolor": "rgba(0, 100, 255, 0.6)", "hovertemplate": "Schedule Task 22
Start: 239.0
End: 240.0
Duration: 1.0
", "legendgroup": "schedule", "line": { "color": "blue", "width": 1 }, "name": "Schedule Task 22", "showlegend": false, "type": "scatter", "x": [ 239, 240, 240, 239, 239 ], "y": [ 21.65, 21.65, 21.95, 21.95, 21.65 ] }, { "fill": "toself", "fillcolor": "rgba(0, 100, 255, 0.6)", "hovertemplate": "Schedule Task 23
Start: 240.0
End: 241.0
Duration: 1.0
", "legendgroup": "schedule", "line": { "color": "blue", "width": 1 }, "name": "Schedule Task 23", "showlegend": false, "type": "scatter", "x": [ 240, 241, 241, 240, 240 ], "y": [ 22.65, 22.65, 22.95, 22.95, 22.65 ] }, { "fill": "toself", "fillcolor": "rgba(0, 100, 255, 0.6)", "hovertemplate": "Schedule Task 24
Start: 249.0
End: 249.0
Duration: 0.0
", "legendgroup": "schedule", "line": { "color": "blue", "width": 1 }, "name": "Schedule Task 24", "showlegend": false, "type": "scatter", "x": [ 249, 249, 249, 249, 249 ], "y": [ 23.65, 23.65, 23.95, 23.95, 23.65 ] }, { "fill": "toself", "fillcolor": "rgba(0, 100, 255, 0.6)", "hovertemplate": "Schedule Task 25
Start: 259.0
End: 260.0
Duration: 1.0
", "legendgroup": "schedule", "line": { "color": "blue", "width": 1 }, "name": "Schedule Task 25", "showlegend": false, "type": "scatter", "x": [ 259, 260, 260, 259, 259 ], "y": [ 24.65, 24.65, 24.95, 24.95, 24.65 ] }, { "fill": "toself", "fillcolor": "rgba(0, 100, 255, 0.6)", "hovertemplate": "Schedule Task 26
Start: 256.0
End: 257.0
Duration: 1.0
", "legendgroup": "schedule", "line": { "color": "blue", "width": 1 }, "name": "Schedule Task 26", "showlegend": false, "type": "scatter", "x": [ 256, 257, 257, 256, 256 ], "y": [ 25.65, 25.65, 25.95, 25.95, 25.65 ] }, { "fill": "toself", "fillcolor": "rgba(0, 100, 255, 0.6)", "hovertemplate": "Schedule Task 27
Start: 257.0
End: 259.0
Duration: 2.0
", "legendgroup": "schedule", "line": { "color": "blue", "width": 1 }, "name": "Schedule Task 27", "showlegend": false, "type": "scatter", "x": [ 257, 259, 259, 257, 257 ], "y": [ 26.65, 26.65, 26.95, 26.95, 26.65 ] }, { "fill": "toself", "fillcolor": "rgba(0, 100, 255, 0.6)", "hovertemplate": "Schedule Task 28
Start: 251.0
End: 252.0
Duration: 1.0
", "legendgroup": "schedule", "line": { "color": "blue", "width": 1 }, "name": "Schedule Task 28", "showlegend": false, "type": "scatter", "x": [ 251, 252, 252, 251, 251 ], "y": [ 27.65, 27.65, 27.95, 27.95, 27.65 ] }, { "fill": "toself", "fillcolor": "rgba(0, 100, 255, 0.6)", "hovertemplate": "Schedule Task 29
Start: 252.0
End: 254.0
Duration: 2.0
", "legendgroup": "schedule", "line": { "color": "blue", "width": 1 }, "name": "Schedule Task 29", "showlegend": false, "type": "scatter", "x": [ 252, 254, 254, 252, 252 ], "y": [ 28.65, 28.65, 28.95, 28.95, 28.65 ] }, { "fill": "toself", "fillcolor": "rgba(0, 100, 255, 0.6)", "hovertemplate": "Schedule Task 30
Start: 254.0
End: 256.0
Duration: 2.0
", "legendgroup": "schedule", "line": { "color": "blue", "width": 1 }, "name": "Schedule Task 30", "showlegend": false, "type": "scatter", "x": [ 254, 256, 256, 254, 254 ], "y": [ 29.65, 29.65, 29.95, 29.95, 29.65 ] }, { "fill": "toself", "fillcolor": "rgba(0, 100, 255, 0.6)", "hovertemplate": "Schedule Task 31
Start: 249.0
End: 250.0
Duration: 1.0
", "legendgroup": "schedule", "line": { "color": "blue", "width": 1 }, "name": "Schedule Task 31", "showlegend": false, "type": "scatter", "x": [ 249, 250, 250, 249, 249 ], "y": [ 30.65, 30.65, 30.95, 30.95, 30.65 ] }, { "fill": "toself", "fillcolor": "rgba(0, 100, 255, 0.6)", "hovertemplate": "Schedule Task 32
Start: 250.0
End: 251.0
Duration: 1.0
", "legendgroup": "schedule", "line": { "color": "blue", "width": 1 }, "name": "Schedule Task 32", "showlegend": false, "type": "scatter", "x": [ 250, 251, 251, 250, 250 ], "y": [ 31.65, 31.65, 31.95, 31.95, 31.65 ] }, { "fill": "toself", "fillcolor": "rgba(0, 100, 255, 0.6)", "hovertemplate": "Schedule Task 33
Start: 260.0
End: 260.0
Duration: 0.0
", "legendgroup": "schedule", "line": { "color": "blue", "width": 1 }, "name": "Schedule Task 33", "showlegend": false, "type": "scatter", "x": [ 260, 260, 260, 260, 260 ], "y": [ 32.65, 32.65, 32.95, 32.95, 32.65 ] }, { "fill": "toself", "fillcolor": "rgba(0, 100, 255, 0.6)", "hovertemplate": "Schedule Task 34
Start: 260.0
End: 293.0
Duration: 33.0
", "legendgroup": "schedule", "line": { "color": "blue", "width": 1 }, "name": "Schedule Task 34", "showlegend": false, "type": "scatter", "x": [ 260, 293, 293, 260, 260 ], "y": [ 33.65, 33.65, 33.95, 33.95, 33.65 ] }, { "fill": "toself", "fillcolor": "rgba(0, 100, 255, 0.6)", "hovertemplate": "Schedule Task 35
Start: 290.0
End: 291.0
Duration: 1.0
", "legendgroup": "schedule", "line": { "color": "blue", "width": 1 }, "name": "Schedule Task 35", "showlegend": false, "type": "scatter", "x": [ 290, 291, 291, 290, 290 ], "y": [ 34.65, 34.65, 34.95, 34.95, 34.65 ] }, { "fill": "toself", "fillcolor": "rgba(0, 100, 255, 0.6)", "hovertemplate": "Schedule Task 36
Start: 291.0
End: 293.0
Duration: 2.0
", "legendgroup": "schedule", "line": { "color": "blue", "width": 1 }, "name": "Schedule Task 36", "showlegend": false, "type": "scatter", "x": [ 291, 293, 293, 291, 291 ], "y": [ 35.65, 35.65, 35.95, 35.95, 35.65 ] }, { "fill": "toself", "fillcolor": "rgba(0, 100, 255, 0.6)", "hovertemplate": "Schedule Task 37
Start: 285.0
End: 286.0
Duration: 1.0
", "legendgroup": "schedule", "line": { "color": "blue", "width": 1 }, "name": "Schedule Task 37", "showlegend": false, "type": "scatter", "x": [ 285, 286, 286, 285, 285 ], "y": [ 36.65, 36.65, 36.95, 36.95, 36.65 ] }, { "fill": "toself", "fillcolor": "rgba(0, 100, 255, 0.6)", "hovertemplate": "Schedule Task 38
Start: 286.0
End: 288.0
Duration: 2.0
", "legendgroup": "schedule", "line": { "color": "blue", "width": 1 }, "name": "Schedule Task 38", "showlegend": false, "type": "scatter", "x": [ 286, 288, 288, 286, 286 ], "y": [ 37.65, 37.65, 37.95, 37.95, 37.65 ] }, { "fill": "toself", "fillcolor": "rgba(0, 100, 255, 0.6)", "hovertemplate": "Schedule Task 39
Start: 288.0
End: 290.0
Duration: 2.0
", "legendgroup": "schedule", "line": { "color": "blue", "width": 1 }, "name": "Schedule Task 39", "showlegend": false, "type": "scatter", "x": [ 288, 290, 290, 288, 288 ], "y": [ 38.65, 38.65, 38.95, 38.95, 38.65 ] }, { "fill": "toself", "fillcolor": "rgba(0, 100, 255, 0.6)", "hovertemplate": "Schedule Task 40
Start: 283.0
End: 284.0
Duration: 1.0
", "legendgroup": "schedule", "line": { "color": "blue", "width": 1 }, "name": "Schedule Task 40", "showlegend": false, "type": "scatter", "x": [ 283, 284, 284, 283, 283 ], "y": [ 39.65, 39.65, 39.95, 39.95, 39.65 ] }, { "fill": "toself", "fillcolor": "rgba(0, 100, 255, 0.6)", "hovertemplate": "Schedule Task 41
Start: 284.0
End: 285.0
Duration: 1.0
", "legendgroup": "schedule", "line": { "color": "blue", "width": 1 }, "name": "Schedule Task 41", "showlegend": false, "type": "scatter", "x": [ 284, 285, 285, 284, 284 ], "y": [ 40.65, 40.65, 40.95, 40.95, 40.65 ] }, { "fill": "toself", "fillcolor": "rgba(0, 100, 255, 0.6)", "hovertemplate": "Schedule Task 42
Start: 293.0
End: 293.0
Duration: 0.0
", "legendgroup": "schedule", "line": { "color": "blue", "width": 1 }, "name": "Schedule Task 42", "showlegend": false, "type": "scatter", "x": [ 293, 293, 293, 293, 293 ], "y": [ 41.65, 41.65, 41.95, 41.95, 41.65 ] }, { "fill": "toself", "fillcolor": "rgba(0, 100, 255, 0.6)", "hovertemplate": "Schedule Task 43
Start: 303.0
End: 304.0
Duration: 1.0
", "legendgroup": "schedule", "line": { "color": "blue", "width": 1 }, "name": "Schedule Task 43", "showlegend": false, "type": "scatter", "x": [ 303, 304, 304, 303, 303 ], "y": [ 42.65, 42.65, 42.95, 42.95, 42.65 ] }, { "fill": "toself", "fillcolor": "rgba(0, 100, 255, 0.6)", "hovertemplate": "Schedule Task 44
Start: 300.0
End: 301.0
Duration: 1.0
", "legendgroup": "schedule", "line": { "color": "blue", "width": 1 }, "name": "Schedule Task 44", "showlegend": false, "type": "scatter", "x": [ 300, 301, 301, 300, 300 ], "y": [ 43.65, 43.65, 43.95, 43.95, 43.65 ] }, { "fill": "toself", "fillcolor": "rgba(0, 100, 255, 0.6)", "hovertemplate": "Schedule Task 45
Start: 301.0
End: 303.0
Duration: 2.0
", "legendgroup": "schedule", "line": { "color": "blue", "width": 1 }, "name": "Schedule Task 45", "showlegend": false, "type": "scatter", "x": [ 301, 303, 303, 301, 301 ], "y": [ 44.65, 44.65, 44.95, 44.95, 44.65 ] }, { "fill": "toself", "fillcolor": "rgba(0, 100, 255, 0.6)", "hovertemplate": "Schedule Task 46
Start: 295.0
End: 296.0
Duration: 1.0
", "legendgroup": "schedule", "line": { "color": "blue", "width": 1 }, "name": "Schedule Task 46", "showlegend": false, "type": "scatter", "x": [ 295, 296, 296, 295, 295 ], "y": [ 45.65, 45.65, 45.95, 45.95, 45.65 ] }, { "fill": "toself", "fillcolor": "rgba(0, 100, 255, 0.6)", "hovertemplate": "Schedule Task 47
Start: 296.0
End: 298.0
Duration: 2.0
", "legendgroup": "schedule", "line": { "color": "blue", "width": 1 }, "name": "Schedule Task 47", "showlegend": false, "type": "scatter", "x": [ 296, 298, 298, 296, 296 ], "y": [ 46.65, 46.65, 46.95, 46.95, 46.65 ] }, { "fill": "toself", "fillcolor": "rgba(0, 100, 255, 0.6)", "hovertemplate": "Schedule Task 48
Start: 298.0
End: 300.0
Duration: 2.0
", "legendgroup": "schedule", "line": { "color": "blue", "width": 1 }, "name": "Schedule Task 48", "showlegend": false, "type": "scatter", "x": [ 298, 300, 300, 298, 298 ], "y": [ 47.65, 47.65, 47.95, 47.95, 47.65 ] }, { "fill": "toself", "fillcolor": "rgba(0, 100, 255, 0.6)", "hovertemplate": "Schedule Task 49
Start: 293.0
End: 294.0
Duration: 1.0
", "legendgroup": "schedule", "line": { "color": "blue", "width": 1 }, "name": "Schedule Task 49", "showlegend": false, "type": "scatter", "x": [ 293, 294, 294, 293, 293 ], "y": [ 48.65, 48.65, 48.95, 48.95, 48.65 ] }, { "fill": "toself", "fillcolor": "rgba(0, 100, 255, 0.6)", "hovertemplate": "Schedule Task 50
Start: 294.0
End: 295.0
Duration: 1.0
", "legendgroup": "schedule", "line": { "color": "blue", "width": 1 }, "name": "Schedule Task 50", "showlegend": false, "type": "scatter", "x": [ 294, 295, 295, 294, 294 ], "y": [ 49.65, 49.65, 49.95, 49.95, 49.65 ] }, { "fill": "toself", "fillcolor": "rgba(0, 100, 255, 0.6)", "hovertemplate": "Schedule Task 51
Start: 304.0
End: 304.0
Duration: 0.0
", "legendgroup": "schedule", "line": { "color": "blue", "width": 1 }, "name": "Schedule Task 51", "showlegend": false, "type": "scatter", "x": [ 304, 304, 304, 304, 304 ], "y": [ 50.65, 50.65, 50.95, 50.95, 50.65 ] }, { "fill": "toself", "fillcolor": "rgba(0, 100, 255, 0.6)", "hovertemplate": "Schedule Task 52
Start: 304.0
End: 341.0
Duration: 37.0
", "legendgroup": "schedule", "line": { "color": "blue", "width": 1 }, "name": "Schedule Task 52", "showlegend": false, "type": "scatter", "x": [ 304, 341, 341, 304, 304 ], "y": [ 51.65, 51.65, 51.95, 51.95, 51.65 ] }, { "fill": "toself", "fillcolor": "rgba(0, 100, 255, 0.6)", "hovertemplate": "Schedule Task 53
Start: 305.0
End: 307.0
Duration: 2.0
", "legendgroup": "schedule", "line": { "color": "blue", "width": 1 }, "name": "Schedule Task 53", "showlegend": false, "type": "scatter", "x": [ 305, 307, 307, 305, 305 ], "y": [ 52.65, 52.65, 52.95, 52.95, 52.65 ] }, { "fill": "toself", "fillcolor": "rgba(0, 100, 255, 0.6)", "hovertemplate": "Schedule Task 54
Start: 307.0
End: 315.0
Duration: 8.0
", "legendgroup": "schedule", "line": { "color": "blue", "width": 1 }, "name": "Schedule Task 54", "showlegend": false, "type": "scatter", "x": [ 307, 315, 315, 307, 307 ], "y": [ 53.65, 53.65, 53.95, 53.95, 53.65 ] }, { "fill": "toself", "fillcolor": "rgba(0, 100, 255, 0.6)", "hovertemplate": "Schedule Task 55
Start: 315.0
End: 318.0
Duration: 3.0
", "legendgroup": "schedule", "line": { "color": "blue", "width": 1 }, "name": "Schedule Task 55", "showlegend": false, "type": "scatter", "x": [ 315, 318, 318, 315, 315 ], "y": [ 54.65, 54.65, 54.95, 54.95, 54.65 ] }, { "fill": "toself", "fillcolor": "rgba(0, 100, 255, 0.6)", "hovertemplate": "Schedule Task 56
Start: 304.0
End: 305.0
Duration: 1.0
", "legendgroup": "schedule", "line": { "color": "blue", "width": 1 }, "name": "Schedule Task 56", "showlegend": false, "type": "scatter", "x": [ 304, 305, 305, 304, 304 ], "y": [ 55.65, 55.65, 55.95, 55.95, 55.65 ] }, { "fill": "toself", "fillcolor": "rgba(0, 100, 255, 0.6)", "hovertemplate": "Schedule Task 57
Start: 341.0
End: 341.0
Duration: 0.0
", "legendgroup": "schedule", "line": { "color": "blue", "width": 1 }, "name": "Schedule Task 57", "showlegend": false, "type": "scatter", "x": [ 341, 341, 341, 341, 341 ], "y": [ 56.65, 56.65, 56.95, 56.95, 56.65 ] }, { "fill": "toself", "fillcolor": "rgba(0, 100, 255, 0.6)", "hovertemplate": "Schedule Task 58
Start: 372.0
End: 374.0
Duration: 2.0
", "legendgroup": "schedule", "line": { "color": "blue", "width": 1 }, "name": "Schedule Task 58", "showlegend": false, "type": "scatter", "x": [ 372, 374, 374, 372, 372 ], "y": [ 57.65, 57.65, 57.95, 57.95, 57.65 ] }, { "fill": "toself", "fillcolor": "rgba(0, 100, 255, 0.6)", "hovertemplate": "Schedule Task 59
Start: 367.0
End: 368.0
Duration: 1.0
", "legendgroup": "schedule", "line": { "color": "blue", "width": 1 }, "name": "Schedule Task 59", "showlegend": false, "type": "scatter", "x": [ 367, 368, 368, 367, 367 ], "y": [ 58.65, 58.65, 58.95, 58.95, 58.65 ] }, { "fill": "toself", "fillcolor": "rgba(0, 100, 255, 0.6)", "hovertemplate": "Schedule Task 60
Start: 368.0
End: 370.0
Duration: 2.0
", "legendgroup": "schedule", "line": { "color": "blue", "width": 1 }, "name": "Schedule Task 60", "showlegend": false, "type": "scatter", "x": [ 368, 370, 370, 368, 368 ], "y": [ 59.65, 59.65, 59.95, 59.95, 59.65 ] }, { "fill": "toself", "fillcolor": "rgba(0, 100, 255, 0.6)", "hovertemplate": "Schedule Task 61
Start: 370.0
End: 372.0
Duration: 2.0
", "legendgroup": "schedule", "line": { "color": "blue", "width": 1 }, "name": "Schedule Task 61", "showlegend": false, "type": "scatter", "x": [ 370, 372, 372, 370, 370 ], "y": [ 60.65, 60.65, 60.95, 60.95, 60.65 ] }, { "fill": "toself", "fillcolor": "rgba(0, 100, 255, 0.6)", "hovertemplate": "Schedule Task 62
Start: 341.0
End: 342.0
Duration: 1.0
", "legendgroup": "schedule", "line": { "color": "blue", "width": 1 }, "name": "Schedule Task 62", "showlegend": false, "type": "scatter", "x": [ 341, 342, 342, 341, 341 ], "y": [ 61.65, 61.65, 61.95, 61.95, 61.65 ] }, { "fill": "toself", "fillcolor": "rgba(0, 100, 255, 0.6)", "hovertemplate": "Schedule Task 63
Start: 342.0
End: 344.0
Duration: 2.0
", "legendgroup": "schedule", "line": { "color": "blue", "width": 1 }, "name": "Schedule Task 63", "showlegend": false, "type": "scatter", "x": [ 342, 344, 344, 342, 342 ], "y": [ 62.65, 62.65, 62.95, 62.95, 62.65 ] }, { "fill": "toself", "fillcolor": "rgba(0, 100, 255, 0.6)", "hovertemplate": "Schedule Task 64
Start: 344.0
End: 363.0
Duration: 19.0
", "legendgroup": "schedule", "line": { "color": "blue", "width": 1 }, "name": "Schedule Task 64", "showlegend": false, "type": "scatter", "x": [ 344, 363, 363, 344, 344 ], "y": [ 63.65, 63.65, 63.95, 63.95, 63.65 ] }, { "fill": "toself", "fillcolor": "rgba(0, 100, 255, 0.6)", "hovertemplate": "Schedule Task 65
Start: 363.0
End: 365.0
Duration: 2.0
", "legendgroup": "schedule", "line": { "color": "blue", "width": 1 }, "name": "Schedule Task 65", "showlegend": false, "type": "scatter", "x": [ 363, 365, 365, 363, 363 ], "y": [ 64.65, 64.65, 64.95, 64.95, 64.65 ] }, { "fill": "toself", "fillcolor": "rgba(0, 100, 255, 0.6)", "hovertemplate": "Schedule Task 66
Start: 365.0
End: 367.0
Duration: 2.0
", "legendgroup": "schedule", "line": { "color": "blue", "width": 1 }, "name": "Schedule Task 66", "showlegend": false, "type": "scatter", "x": [ 365, 367, 367, 365, 365 ], "y": [ 65.65, 65.65, 65.95, 65.95, 65.65 ] }, { "fill": "toself", "fillcolor": "rgba(0, 100, 255, 0.6)", "hovertemplate": "Schedule Task 67
Start: 341.0
End: 342.0
Duration: 1.0
", "legendgroup": "schedule", "line": { "color": "blue", "width": 1 }, "name": "Schedule Task 67", "showlegend": false, "type": "scatter", "x": [ 341, 342, 342, 341, 341 ], "y": [ 66.65, 66.65, 66.95, 66.95, 66.65 ] }, { "fill": "toself", "fillcolor": "rgba(0, 100, 255, 0.6)", "hovertemplate": "Schedule Task 68
Start: 342.0
End: 343.0
Duration: 1.0
", "legendgroup": "schedule", "line": { "color": "blue", "width": 1 }, "name": "Schedule Task 68", "showlegend": false, "type": "scatter", "x": [ 342, 343, 343, 342, 342 ], "y": [ 67.65, 67.65, 67.95, 67.95, 67.65 ] }, { "fill": "toself", "fillcolor": "rgba(0, 100, 255, 0.6)", "hovertemplate": "Schedule Task 69
Start: 374.0
End: 375.0
Duration: 1.0
", "legendgroup": "schedule", "line": { "color": "blue", "width": 1 }, "name": "Schedule Task 69", "showlegend": false, "type": "scatter", "x": [ 374, 375, 375, 374, 374 ], "y": [ 68.65, 68.65, 68.95, 68.95, 68.65 ] }, { "fill": "toself", "fillcolor": "rgba(255, 100, 0, 0.6)", "hovertemplate": "Simulation Task 70
Start: 101981.0
End: 101981.0
Duration: 0.0
Accelerator: 10
", "legendgroup": "simulation", "line": { "color": "red", "width": 1 }, "name": "Simulation Task 70", "showlegend": true, "type": "scatter", "x": [ 0, 0, 0, 0, 0 ], "y": [ 70.05, 70.05, 70.35, 70.35, 70.05 ] }, { "fill": "toself", "fillcolor": "rgba(255, 100, 0, 0.6)", "hovertemplate": "Simulation Task 0
Start: 101981.0
End: 101982.0
Duration: 1.0
Accelerator: 10
", "legendgroup": "simulation", "line": { "color": "red", "width": 1 }, "name": "Simulation Task 0", "showlegend": false, "type": "scatter", "x": [ 0, 1, 1, 0, 0 ], "y": [ 0.05, 0.05, 0.35, 0.35, 0.05 ] }, { "fill": "toself", "fillcolor": "rgba(255, 100, 0, 0.6)", "hovertemplate": "Simulation Task 1
Start: 101982.0
End: 101986.0
Duration: 4.0
Accelerator: 10
", "legendgroup": "simulation", "line": { "color": "red", "width": 1 }, "name": "Simulation Task 1", "showlegend": false, "type": "scatter", "x": [ 1, 5, 5, 1, 1 ], "y": [ 1.05, 1.05, 1.35, 1.35, 1.05 ] }, { "fill": "toself", "fillcolor": "rgba(255, 100, 0, 0.6)", "hovertemplate": "Simulation Task 2
Start: 101986.0
End: 101993.0
Duration: 7.0
Accelerator: 10
", "legendgroup": "simulation", "line": { "color": "red", "width": 1 }, "name": "Simulation Task 2", "showlegend": false, "type": "scatter", "x": [ 5, 12, 12, 5, 5 ], "y": [ 2.05, 2.05, 2.35, 2.35, 2.05 ] }, { "fill": "toself", "fillcolor": "rgba(255, 100, 0, 0.6)", "hovertemplate": "Simulation Task 4
Start: 101993.0
End: 101998.0
Duration: 5.0
Accelerator: 6
", "legendgroup": "simulation", "line": { "color": "red", "width": 1 }, "name": "Simulation Task 4", "showlegend": false, "type": "scatter", "x": [ 12, 17, 17, 12, 12 ], "y": [ 4.05, 4.05, 4.35, 4.35, 4.05 ] }, { "fill": "toself", "fillcolor": "rgba(255, 100, 0, 0.6)", "hovertemplate": "Simulation Task 3
Start: 101993.0
End: 102030.0
Duration: 37.0
Accelerator: 10
", "legendgroup": "simulation", "line": { "color": "red", "width": 1 }, "name": "Simulation Task 3", "showlegend": false, "type": "scatter", "x": [ 12, 49, 49, 12, 12 ], "y": [ 3.05, 3.05, 3.35, 3.35, 3.05 ] }, { "fill": "toself", "fillcolor": "rgba(255, 100, 0, 0.6)", "hovertemplate": "Simulation Task 5
Start: 102030.0
End: 102030.0
Duration: 0.0
Accelerator: 6
", "legendgroup": "simulation", "line": { "color": "red", "width": 1 }, "name": "Simulation Task 5", "showlegend": false, "type": "scatter", "x": [ 49, 49, 49, 49, 49 ], "y": [ 5.05, 5.05, 5.35, 5.35, 5.05 ] }, { "fill": "toself", "fillcolor": "rgba(255, 100, 0, 0.6)", "hovertemplate": "Simulation Task 8
Start: 102030.0
End: 102031.0
Duration: 1.0
Accelerator: 7
", "legendgroup": "simulation", "line": { "color": "red", "width": 1 }, "name": "Simulation Task 8", "showlegend": false, "type": "scatter", "x": [ 49, 50, 50, 49, 49 ], "y": [ 8.05, 8.05, 8.35, 8.35, 8.05 ] }, { "fill": "toself", "fillcolor": "rgba(255, 100, 0, 0.6)", "hovertemplate": "Simulation Task 6
Start: 102030.0
End: 102103.0
Duration: 73.0
Accelerator: 6
", "legendgroup": "simulation", "line": { "color": "red", "width": 1 }, "name": "Simulation Task 6", "showlegend": false, "type": "scatter", "x": [ 49, 122, 122, 49, 49 ], "y": [ 6.05, 6.05, 6.35, 6.35, 6.05 ] }, { "fill": "toself", "fillcolor": "rgba(255, 100, 0, 0.6)", "hovertemplate": "Simulation Task 9
Start: 102031.0
End: 102034.0
Duration: 3.0
Accelerator: 7
", "legendgroup": "simulation", "line": { "color": "red", "width": 1 }, "name": "Simulation Task 9", "showlegend": false, "type": "scatter", "x": [ 50, 53, 53, 50, 50 ], "y": [ 9.05, 9.05, 9.35, 9.35, 9.05 ] }, { "fill": "toself", "fillcolor": "rgba(255, 100, 0, 0.6)", "hovertemplate": "Simulation Task 10
Start: 102034.0
End: 102073.0
Duration: 39.0
Accelerator: 7
", "legendgroup": "simulation", "line": { "color": "red", "width": 1 }, "name": "Simulation Task 10", "showlegend": false, "type": "scatter", "x": [ 53, 92, 92, 53, 53 ], "y": [ 10.05, 10.05, 10.35, 10.35, 10.05 ] }, { "fill": "toself", "fillcolor": "rgba(255, 100, 0, 0.6)", "hovertemplate": "Simulation Task 11
Start: 102073.0
End: 102078.0
Duration: 5.0
Accelerator: 3
", "legendgroup": "simulation", "line": { "color": "red", "width": 1 }, "name": "Simulation Task 11", "showlegend": false, "type": "scatter", "x": [ 92, 97, 97, 92, 92 ], "y": [ 11.05, 11.05, 11.35, 11.35, 11.05 ] }, { "fill": "toself", "fillcolor": "rgba(255, 100, 0, 0.6)", "hovertemplate": "Simulation Task 7
Start: 102103.0
End: 102108.0
Duration: 5.0
Accelerator: 3
", "legendgroup": "simulation", "line": { "color": "red", "width": 1 }, "name": "Simulation Task 7", "showlegend": false, "type": "scatter", "x": [ 122, 127, 127, 122, 122 ], "y": [ 7.05, 7.05, 7.35, 7.35, 7.05 ] }, { "fill": "toself", "fillcolor": "rgba(255, 100, 0, 0.6)", "hovertemplate": "Simulation Task 12
Start: 102108.0
End: 102108.0
Duration: 0.0
Accelerator: 3
", "legendgroup": "simulation", "line": { "color": "red", "width": 1 }, "name": "Simulation Task 12", "showlegend": false, "type": "scatter", "x": [ 127, 127, 127, 127, 127 ], "y": [ 12.05, 12.05, 12.35, 12.35, 12.05 ] }, { "fill": "toself", "fillcolor": "rgba(255, 100, 0, 0.6)", "hovertemplate": "Simulation Task 13
Start: 102108.0
End: 102115.0
Duration: 7.0
Accelerator: 3
", "legendgroup": "simulation", "line": { "color": "red", "width": 1 }, "name": "Simulation Task 13", "showlegend": false, "type": "scatter", "x": [ 127, 134, 134, 127, 127 ], "y": [ 13.05, 13.05, 13.35, 13.35, 13.05 ] }, { "fill": "toself", "fillcolor": "rgba(255, 100, 0, 0.6)", "hovertemplate": "Simulation Task 14
Start: 102115.0
End: 102116.0
Duration: 1.0
Accelerator: 3
", "legendgroup": "simulation", "line": { "color": "red", "width": 1 }, "name": "Simulation Task 14", "showlegend": false, "type": "scatter", "x": [ 134, 135, 135, 134, 134 ], "y": [ 14.05, 14.05, 14.35, 14.35, 14.05 ] }, { "fill": "toself", "fillcolor": "rgba(255, 100, 0, 0.6)", "hovertemplate": "Simulation Task 15
Start: 102116.0
End: 102116.0
Duration: 0.0
Accelerator: 3
", "legendgroup": "simulation", "line": { "color": "red", "width": 1 }, "name": "Simulation Task 15", "showlegend": false, "type": "scatter", "x": [ 135, 135, 135, 135, 135 ], "y": [ 15.05, 15.05, 15.35, 15.35, 15.05 ] }, { "fill": "toself", "fillcolor": "rgba(255, 100, 0, 0.6)", "hovertemplate": "Simulation Task 17
Start: 102116.0
End: 102117.0
Duration: 1.0
Accelerator: 2
", "legendgroup": "simulation", "line": { "color": "red", "width": 1 }, "name": "Simulation Task 17", "showlegend": false, "type": "scatter", "x": [ 135, 136, 136, 135, 135 ], "y": [ 17.05, 17.05, 17.35, 17.35, 17.05 ] }, { "fill": "toself", "fillcolor": "rgba(255, 100, 0, 0.6)", "hovertemplate": "Simulation Task 16
Start: 102116.0
End: 102130.0
Duration: 14.0
Accelerator: 3
", "legendgroup": "simulation", "line": { "color": "red", "width": 1 }, "name": "Simulation Task 16", "showlegend": false, "type": "scatter", "x": [ 135, 149, 149, 135, 135 ], "y": [ 16.05, 16.05, 16.35, 16.35, 16.05 ] }, { "fill": "toself", "fillcolor": "rgba(255, 100, 0, 0.6)", "hovertemplate": "Simulation Task 22
Start: 102117.0
End: 102118.0
Duration: 1.0
Accelerator: 2
", "legendgroup": "simulation", "line": { "color": "red", "width": 1 }, "name": "Simulation Task 22", "showlegend": false, "type": "scatter", "x": [ 136, 137, 137, 136, 136 ], "y": [ 22.05, 22.05, 22.35, 22.35, 22.05 ] }, { "fill": "toself", "fillcolor": "rgba(255, 100, 0, 0.6)", "hovertemplate": "Simulation Task 18
Start: 102118.0
End: 102120.0
Duration: 2.0
Accelerator: 2
", "legendgroup": "simulation", "line": { "color": "red", "width": 1 }, "name": "Simulation Task 18", "showlegend": false, "type": "scatter", "x": [ 137, 139, 139, 137, 137 ], "y": [ 18.05, 18.05, 18.35, 18.35, 18.05 ] }, { "fill": "toself", "fillcolor": "rgba(255, 100, 0, 0.6)", "hovertemplate": "Simulation Task 23
Start: 102120.0
End: 102121.0
Duration: 1.0
Accelerator: 2
", "legendgroup": "simulation", "line": { "color": "red", "width": 1 }, "name": "Simulation Task 23", "showlegend": false, "type": "scatter", "x": [ 139, 140, 140, 139, 139 ], "y": [ 23.05, 23.05, 23.35, 23.35, 23.05 ] }, { "fill": "toself", "fillcolor": "rgba(255, 100, 0, 0.6)", "hovertemplate": "Simulation Task 19
Start: 102121.0
End: 102122.0
Duration: 1.0
Accelerator: 2
", "legendgroup": "simulation", "line": { "color": "red", "width": 1 }, "name": "Simulation Task 19", "showlegend": false, "type": "scatter", "x": [ 140, 141, 141, 140, 140 ], "y": [ 19.05, 19.05, 19.35, 19.35, 19.05 ] }, { "fill": "toself", "fillcolor": "rgba(255, 100, 0, 0.6)", "hovertemplate": "Simulation Task 20
Start: 102122.0
End: 102124.0
Duration: 2.0
Accelerator: 2
", "legendgroup": "simulation", "line": { "color": "red", "width": 1 }, "name": "Simulation Task 20", "showlegend": false, "type": "scatter", "x": [ 141, 143, 143, 141, 141 ], "y": [ 20.05, 20.05, 20.35, 20.35, 20.05 ] }, { "fill": "toself", "fillcolor": "rgba(255, 100, 0, 0.6)", "hovertemplate": "Simulation Task 21
Start: 102124.0
End: 102126.0
Duration: 2.0
Accelerator: 2
", "legendgroup": "simulation", "line": { "color": "red", "width": 1 }, "name": "Simulation Task 21", "showlegend": false, "type": "scatter", "x": [ 143, 145, 145, 143, 143 ], "y": [ 21.05, 21.05, 21.35, 21.35, 21.05 ] }, { "fill": "toself", "fillcolor": "rgba(255, 100, 0, 0.6)", "hovertemplate": "Simulation Task 24
Start: 102130.0
End: 102130.0
Duration: 0.0
Accelerator: 2
", "legendgroup": "simulation", "line": { "color": "red", "width": 1 }, "name": "Simulation Task 24", "showlegend": false, "type": "scatter", "x": [ 149, 149, 149, 149, 149 ], "y": [ 24.05, 24.05, 24.35, 24.35, 24.05 ] }, { "fill": "toself", "fillcolor": "rgba(255, 100, 0, 0.6)", "hovertemplate": "Simulation Task 25
Start: 102130.0
End: 102131.0
Duration: 1.0
Accelerator: 2
", "legendgroup": "simulation", "line": { "color": "red", "width": 1 }, "name": "Simulation Task 25", "showlegend": false, "type": "scatter", "x": [ 149, 150, 150, 149, 149 ], "y": [ 25.05, 25.05, 25.35, 25.35, 25.05 ] }, { "fill": "toself", "fillcolor": "rgba(255, 100, 0, 0.6)", "hovertemplate": "Simulation Task 31
Start: 102131.0
End: 102132.0
Duration: 1.0
Accelerator: 2
", "legendgroup": "simulation", "line": { "color": "red", "width": 1 }, "name": "Simulation Task 31", "showlegend": false, "type": "scatter", "x": [ 150, 151, 151, 150, 150 ], "y": [ 31.05, 31.05, 31.35, 31.35, 31.05 ] }, { "fill": "toself", "fillcolor": "rgba(255, 100, 0, 0.6)", "hovertemplate": "Simulation Task 28
Start: 102132.0
End: 102133.0
Duration: 1.0
Accelerator: 2
", "legendgroup": "simulation", "line": { "color": "red", "width": 1 }, "name": "Simulation Task 28", "showlegend": false, "type": "scatter", "x": [ 151, 152, 152, 151, 151 ], "y": [ 28.05, 28.05, 28.35, 28.35, 28.05 ] }, { "fill": "toself", "fillcolor": "rgba(255, 100, 0, 0.6)", "hovertemplate": "Simulation Task 32
Start: 102133.0
End: 102134.0
Duration: 1.0
Accelerator: 2
", "legendgroup": "simulation", "line": { "color": "red", "width": 1 }, "name": "Simulation Task 32", "showlegend": false, "type": "scatter", "x": [ 152, 153, 153, 152, 152 ], "y": [ 32.05, 32.05, 32.35, 32.35, 32.05 ] }, { "fill": "toself", "fillcolor": "rgba(255, 100, 0, 0.6)", "hovertemplate": "Simulation Task 29
Start: 102134.0
End: 102136.0
Duration: 2.0
Accelerator: 2
", "legendgroup": "simulation", "line": { "color": "red", "width": 1 }, "name": "Simulation Task 29", "showlegend": false, "type": "scatter", "x": [ 153, 155, 155, 153, 153 ], "y": [ 29.05, 29.05, 29.35, 29.35, 29.05 ] }, { "fill": "toself", "fillcolor": "rgba(255, 100, 0, 0.6)", "hovertemplate": "Simulation Task 26
Start: 102136.0
End: 102137.0
Duration: 1.0
Accelerator: 2
", "legendgroup": "simulation", "line": { "color": "red", "width": 1 }, "name": "Simulation Task 26", "showlegend": false, "type": "scatter", "x": [ 155, 156, 156, 155, 155 ], "y": [ 26.05, 26.05, 26.35, 26.35, 26.05 ] }, { "fill": "toself", "fillcolor": "rgba(255, 100, 0, 0.6)", "hovertemplate": "Simulation Task 30
Start: 102137.0
End: 102139.0
Duration: 2.0
Accelerator: 2
", "legendgroup": "simulation", "line": { "color": "red", "width": 1 }, "name": "Simulation Task 30", "showlegend": false, "type": "scatter", "x": [ 156, 158, 158, 156, 156 ], "y": [ 30.05, 30.05, 30.35, 30.35, 30.05 ] }, { "fill": "toself", "fillcolor": "rgba(255, 100, 0, 0.6)", "hovertemplate": "Simulation Task 27
Start: 102139.0
End: 102141.0
Duration: 2.0
Accelerator: 2
", "legendgroup": "simulation", "line": { "color": "red", "width": 1 }, "name": "Simulation Task 27", "showlegend": false, "type": "scatter", "x": [ 158, 160, 160, 158, 158 ], "y": [ 27.05, 27.05, 27.35, 27.35, 27.05 ] }, { "fill": "toself", "fillcolor": "rgba(255, 100, 0, 0.6)", "hovertemplate": "Simulation Task 33
Start: 102141.0
End: 102141.0
Duration: 0.0
Accelerator: 2
", "legendgroup": "simulation", "line": { "color": "red", "width": 1 }, "name": "Simulation Task 33", "showlegend": false, "type": "scatter", "x": [ 160, 160, 160, 160, 160 ], "y": [ 33.05, 33.05, 33.35, 33.35, 33.05 ] }, { "fill": "toself", "fillcolor": "rgba(255, 100, 0, 0.6)", "hovertemplate": "Simulation Task 35
Start: 102141.0
End: 102142.0
Duration: 1.0
Accelerator: 1
", "legendgroup": "simulation", "line": { "color": "red", "width": 1 }, "name": "Simulation Task 35", "showlegend": false, "type": "scatter", "x": [ 160, 161, 161, 160, 160 ], "y": [ 35.05, 35.05, 35.35, 35.35, 35.05 ] }, { "fill": "toself", "fillcolor": "rgba(255, 100, 0, 0.6)", "hovertemplate": "Simulation Task 34
Start: 102141.0
End: 102155.0
Duration: 14.0
Accelerator: 2
", "legendgroup": "simulation", "line": { "color": "red", "width": 1 }, "name": "Simulation Task 34", "showlegend": false, "type": "scatter", "x": [ 160, 174, 174, 160, 160 ], "y": [ 34.05, 34.05, 34.35, 34.35, 34.05 ] }, { "fill": "toself", "fillcolor": "rgba(255, 100, 0, 0.6)", "hovertemplate": "Simulation Task 40
Start: 102142.0
End: 102143.0
Duration: 1.0
Accelerator: 1
", "legendgroup": "simulation", "line": { "color": "red", "width": 1 }, "name": "Simulation Task 40", "showlegend": false, "type": "scatter", "x": [ 161, 162, 162, 161, 161 ], "y": [ 40.05, 40.05, 40.35, 40.35, 40.05 ] }, { "fill": "toself", "fillcolor": "rgba(255, 100, 0, 0.6)", "hovertemplate": "Simulation Task 36
Start: 102143.0
End: 102145.0
Duration: 2.0
Accelerator: 1
", "legendgroup": "simulation", "line": { "color": "red", "width": 1 }, "name": "Simulation Task 36", "showlegend": false, "type": "scatter", "x": [ 162, 164, 164, 162, 162 ], "y": [ 36.05, 36.05, 36.35, 36.35, 36.05 ] }, { "fill": "toself", "fillcolor": "rgba(255, 100, 0, 0.6)", "hovertemplate": "Simulation Task 41
Start: 102145.0
End: 102146.0
Duration: 1.0
Accelerator: 1
", "legendgroup": "simulation", "line": { "color": "red", "width": 1 }, "name": "Simulation Task 41", "showlegend": false, "type": "scatter", "x": [ 164, 165, 165, 164, 164 ], "y": [ 41.05, 41.05, 41.35, 41.35, 41.05 ] }, { "fill": "toself", "fillcolor": "rgba(255, 100, 0, 0.6)", "hovertemplate": "Simulation Task 37
Start: 102146.0
End: 102147.0
Duration: 1.0
Accelerator: 1
", "legendgroup": "simulation", "line": { "color": "red", "width": 1 }, "name": "Simulation Task 37", "showlegend": false, "type": "scatter", "x": [ 165, 166, 166, 165, 165 ], "y": [ 37.05, 37.05, 37.35, 37.35, 37.05 ] }, { "fill": "toself", "fillcolor": "rgba(255, 100, 0, 0.6)", "hovertemplate": "Simulation Task 38
Start: 102147.0
End: 102149.0
Duration: 2.0
Accelerator: 1
", "legendgroup": "simulation", "line": { "color": "red", "width": 1 }, "name": "Simulation Task 38", "showlegend": false, "type": "scatter", "x": [ 166, 168, 168, 166, 166 ], "y": [ 38.05, 38.05, 38.35, 38.35, 38.05 ] }, { "fill": "toself", "fillcolor": "rgba(255, 100, 0, 0.6)", "hovertemplate": "Simulation Task 39
Start: 102149.0
End: 102151.0
Duration: 2.0
Accelerator: 1
", "legendgroup": "simulation", "line": { "color": "red", "width": 1 }, "name": "Simulation Task 39", "showlegend": false, "type": "scatter", "x": [ 168, 170, 170, 168, 168 ], "y": [ 39.05, 39.05, 39.35, 39.35, 39.05 ] }, { "fill": "toself", "fillcolor": "rgba(255, 100, 0, 0.6)", "hovertemplate": "Simulation Task 42
Start: 102155.0
End: 102155.0
Duration: 0.0
Accelerator: 1
", "legendgroup": "simulation", "line": { "color": "red", "width": 1 }, "name": "Simulation Task 42", "showlegend": false, "type": "scatter", "x": [ 174, 174, 174, 174, 174 ], "y": [ 42.05, 42.05, 42.35, 42.35, 42.05 ] }, { "fill": "toself", "fillcolor": "rgba(255, 100, 0, 0.6)", "hovertemplate": "Simulation Task 43
Start: 102155.0
End: 102156.0
Duration: 1.0
Accelerator: 1
", "legendgroup": "simulation", "line": { "color": "red", "width": 1 }, "name": "Simulation Task 43", "showlegend": false, "type": "scatter", "x": [ 174, 175, 175, 174, 174 ], "y": [ 43.05, 43.05, 43.35, 43.35, 43.05 ] }, { "fill": "toself", "fillcolor": "rgba(255, 100, 0, 0.6)", "hovertemplate": "Simulation Task 49
Start: 102156.0
End: 102157.0
Duration: 1.0
Accelerator: 1
", "legendgroup": "simulation", "line": { "color": "red", "width": 1 }, "name": "Simulation Task 49", "showlegend": false, "type": "scatter", "x": [ 175, 176, 176, 175, 175 ], "y": [ 49.05, 49.05, 49.35, 49.35, 49.05 ] }, { "fill": "toself", "fillcolor": "rgba(255, 100, 0, 0.6)", "hovertemplate": "Simulation Task 46
Start: 102157.0
End: 102158.0
Duration: 1.0
Accelerator: 1
", "legendgroup": "simulation", "line": { "color": "red", "width": 1 }, "name": "Simulation Task 46", "showlegend": false, "type": "scatter", "x": [ 176, 177, 177, 176, 176 ], "y": [ 46.05, 46.05, 46.35, 46.35, 46.05 ] }, { "fill": "toself", "fillcolor": "rgba(255, 100, 0, 0.6)", "hovertemplate": "Simulation Task 50
Start: 102158.0
End: 102159.0
Duration: 1.0
Accelerator: 1
", "legendgroup": "simulation", "line": { "color": "red", "width": 1 }, "name": "Simulation Task 50", "showlegend": false, "type": "scatter", "x": [ 177, 178, 178, 177, 177 ], "y": [ 50.05, 50.05, 50.35, 50.35, 50.05 ] }, { "fill": "toself", "fillcolor": "rgba(255, 100, 0, 0.6)", "hovertemplate": "Simulation Task 47
Start: 102159.0
End: 102161.0
Duration: 2.0
Accelerator: 1
", "legendgroup": "simulation", "line": { "color": "red", "width": 1 }, "name": "Simulation Task 47", "showlegend": false, "type": "scatter", "x": [ 178, 180, 180, 178, 178 ], "y": [ 47.05, 47.05, 47.35, 47.35, 47.05 ] }, { "fill": "toself", "fillcolor": "rgba(255, 100, 0, 0.6)", "hovertemplate": "Simulation Task 44
Start: 102161.0
End: 102162.0
Duration: 1.0
Accelerator: 1
", "legendgroup": "simulation", "line": { "color": "red", "width": 1 }, "name": "Simulation Task 44", "showlegend": false, "type": "scatter", "x": [ 180, 181, 181, 180, 180 ], "y": [ 44.05, 44.05, 44.35, 44.35, 44.05 ] }, { "fill": "toself", "fillcolor": "rgba(255, 100, 0, 0.6)", "hovertemplate": "Simulation Task 48
Start: 102162.0
End: 102164.0
Duration: 2.0
Accelerator: 1
", "legendgroup": "simulation", "line": { "color": "red", "width": 1 }, "name": "Simulation Task 48", "showlegend": false, "type": "scatter", "x": [ 181, 183, 183, 181, 181 ], "y": [ 48.05, 48.05, 48.35, 48.35, 48.05 ] }, { "fill": "toself", "fillcolor": "rgba(255, 100, 0, 0.6)", "hovertemplate": "Simulation Task 45
Start: 102164.0
End: 102166.0
Duration: 2.0
Accelerator: 1
", "legendgroup": "simulation", "line": { "color": "red", "width": 1 }, "name": "Simulation Task 45", "showlegend": false, "type": "scatter", "x": [ 183, 185, 185, 183, 183 ], "y": [ 45.05, 45.05, 45.35, 45.35, 45.05 ] }, { "fill": "toself", "fillcolor": "rgba(255, 100, 0, 0.6)", "hovertemplate": "Simulation Task 51
Start: 102166.0
End: 102166.0
Duration: 0.0
Accelerator: 1
", "legendgroup": "simulation", "line": { "color": "red", "width": 1 }, "name": "Simulation Task 51", "showlegend": false, "type": "scatter", "x": [ 185, 185, 185, 185, 185 ], "y": [ 51.05, 51.05, 51.35, 51.35, 51.05 ] }, { "fill": "toself", "fillcolor": "rgba(255, 100, 0, 0.6)", "hovertemplate": "Simulation Task 53
Start: 102166.0
End: 102168.0
Duration: 2.0
Accelerator: 0
", "legendgroup": "simulation", "line": { "color": "red", "width": 1 }, "name": "Simulation Task 53", "showlegend": false, "type": "scatter", "x": [ 185, 187, 187, 185, 185 ], "y": [ 53.05, 53.05, 53.35, 53.35, 53.05 ] }, { "fill": "toself", "fillcolor": "rgba(255, 100, 0, 0.6)", "hovertemplate": "Simulation Task 52
Start: 102166.0
End: 102185.0
Duration: 19.0
Accelerator: 1
", "legendgroup": "simulation", "line": { "color": "red", "width": 1 }, "name": "Simulation Task 52", "showlegend": false, "type": "scatter", "x": [ 185, 204, 204, 185, 185 ], "y": [ 52.05, 52.05, 52.35, 52.35, 52.05 ] }, { "fill": "toself", "fillcolor": "rgba(255, 100, 0, 0.6)", "hovertemplate": "Simulation Task 56
Start: 102168.0
End: 102169.0
Duration: 1.0
Accelerator: 0
", "legendgroup": "simulation", "line": { "color": "red", "width": 1 }, "name": "Simulation Task 56", "showlegend": false, "type": "scatter", "x": [ 187, 188, 188, 187, 187 ], "y": [ 56.05, 56.05, 56.35, 56.35, 56.05 ] }, { "fill": "toself", "fillcolor": "rgba(255, 100, 0, 0.6)", "hovertemplate": "Simulation Task 54
Start: 102169.0
End: 102177.0
Duration: 8.0
Accelerator: 0
", "legendgroup": "simulation", "line": { "color": "red", "width": 1 }, "name": "Simulation Task 54", "showlegend": false, "type": "scatter", "x": [ 188, 196, 196, 188, 188 ], "y": [ 54.05, 54.05, 54.35, 54.35, 54.05 ] }, { "fill": "toself", "fillcolor": "rgba(255, 100, 0, 0.6)", "hovertemplate": "Simulation Task 55
Start: 102177.0
End: 102180.0
Duration: 3.0
Accelerator: 0
", "legendgroup": "simulation", "line": { "color": "red", "width": 1 }, "name": "Simulation Task 55", "showlegend": false, "type": "scatter", "x": [ 196, 199, 199, 196, 196 ], "y": [ 55.05, 55.05, 55.35, 55.35, 55.05 ] }, { "fill": "toself", "fillcolor": "rgba(255, 100, 0, 0.6)", "hovertemplate": "Simulation Task 57
Start: 102185.0
End: 102185.0
Duration: 0.0
Accelerator: 0
", "legendgroup": "simulation", "line": { "color": "red", "width": 1 }, "name": "Simulation Task 57", "showlegend": false, "type": "scatter", "x": [ 204, 204, 204, 204, 204 ], "y": [ 57.05, 57.05, 57.35, 57.35, 57.05 ] }, { "fill": "toself", "fillcolor": "rgba(255, 100, 0, 0.6)", "hovertemplate": "Simulation Task 62
Start: 102185.0
End: 102186.0
Duration: 1.0
Accelerator: 4
", "legendgroup": "simulation", "line": { "color": "red", "width": 1 }, "name": "Simulation Task 62", "showlegend": false, "type": "scatter", "x": [ 204, 205, 205, 204, 204 ], "y": [ 62.05, 62.05, 62.35, 62.35, 62.05 ] }, { "fill": "toself", "fillcolor": "rgba(255, 100, 0, 0.6)", "hovertemplate": "Simulation Task 58
Start: 102185.0
End: 102187.0
Duration: 2.0
Accelerator: 0
", "legendgroup": "simulation", "line": { "color": "red", "width": 1 }, "name": "Simulation Task 58", "showlegend": false, "type": "scatter", "x": [ 204, 206, 206, 204, 204 ], "y": [ 58.05, 58.05, 58.35, 58.35, 58.05 ] }, { "fill": "toself", "fillcolor": "rgba(255, 100, 0, 0.6)", "hovertemplate": "Simulation Task 63
Start: 102186.0
End: 102188.0
Duration: 2.0
Accelerator: 4
", "legendgroup": "simulation", "line": { "color": "red", "width": 1 }, "name": "Simulation Task 63", "showlegend": false, "type": "scatter", "x": [ 205, 207, 207, 205, 205 ], "y": [ 63.05, 63.05, 63.35, 63.35, 63.05 ] }, { "fill": "toself", "fillcolor": "rgba(255, 100, 0, 0.6)", "hovertemplate": "Simulation Task 67
Start: 102187.0
End: 102188.0
Duration: 1.0
Accelerator: 0
", "legendgroup": "simulation", "line": { "color": "red", "width": 1 }, "name": "Simulation Task 67", "showlegend": false, "type": "scatter", "x": [ 206, 207, 207, 206, 206 ], "y": [ 67.05, 67.05, 67.35, 67.35, 67.05 ] }, { "fill": "toself", "fillcolor": "rgba(255, 100, 0, 0.6)", "hovertemplate": "Simulation Task 59
Start: 102188.0
End: 102189.0
Duration: 1.0
Accelerator: 0
", "legendgroup": "simulation", "line": { "color": "red", "width": 1 }, "name": "Simulation Task 59", "showlegend": false, "type": "scatter", "x": [ 207, 208, 208, 207, 207 ], "y": [ 59.05, 59.05, 59.35, 59.35, 59.05 ] }, { "fill": "toself", "fillcolor": "rgba(255, 100, 0, 0.6)", "hovertemplate": "Simulation Task 64
Start: 102188.0
End: 102197.0
Duration: 9.0
Accelerator: 4
", "legendgroup": "simulation", "line": { "color": "red", "width": 1 }, "name": "Simulation Task 64", "showlegend": false, "type": "scatter", "x": [ 207, 216, 216, 207, 207 ], "y": [ 64.05, 64.05, 64.35, 64.35, 64.05 ] }, { "fill": "toself", "fillcolor": "rgba(255, 100, 0, 0.6)", "hovertemplate": "Simulation Task 68
Start: 102189.0
End: 102190.0
Duration: 1.0
Accelerator: 0
", "legendgroup": "simulation", "line": { "color": "red", "width": 1 }, "name": "Simulation Task 68", "showlegend": false, "type": "scatter", "x": [ 208, 209, 209, 208, 208 ], "y": [ 68.05, 68.05, 68.35, 68.35, 68.05 ] }, { "fill": "toself", "fillcolor": "rgba(255, 100, 0, 0.6)", "hovertemplate": "Simulation Task 60
Start: 102190.0
End: 102192.0
Duration: 2.0
Accelerator: 0
", "legendgroup": "simulation", "line": { "color": "red", "width": 1 }, "name": "Simulation Task 60", "showlegend": false, "type": "scatter", "x": [ 209, 211, 211, 209, 209 ], "y": [ 60.05, 60.05, 60.35, 60.35, 60.05 ] }, { "fill": "toself", "fillcolor": "rgba(255, 100, 0, 0.6)", "hovertemplate": "Simulation Task 61
Start: 102192.0
End: 102194.0
Duration: 2.0
Accelerator: 0
", "legendgroup": "simulation", "line": { "color": "red", "width": 1 }, "name": "Simulation Task 61", "showlegend": false, "type": "scatter", "x": [ 211, 213, 213, 211, 211 ], "y": [ 61.05, 61.05, 61.35, 61.35, 61.05 ] }, { "fill": "toself", "fillcolor": "rgba(255, 100, 0, 0.6)", "hovertemplate": "Simulation Task 65
Start: 102197.0
End: 102199.0
Duration: 2.0
Accelerator: 0
", "legendgroup": "simulation", "line": { "color": "red", "width": 1 }, "name": "Simulation Task 65", "showlegend": false, "type": "scatter", "x": [ 216, 218, 218, 216, 216 ], "y": [ 65.05, 65.05, 65.35, 65.35, 65.05 ] }, { "fill": "toself", "fillcolor": "rgba(255, 100, 0, 0.6)", "hovertemplate": "Simulation Task 66
Start: 102199.0
End: 102201.0
Duration: 2.0
Accelerator: 0
", "legendgroup": "simulation", "line": { "color": "red", "width": 1 }, "name": "Simulation Task 66", "showlegend": false, "type": "scatter", "x": [ 218, 220, 220, 218, 218 ], "y": [ 66.05, 66.05, 66.35, 66.35, 66.05 ] }, { "fill": "toself", "fillcolor": "rgba(255, 100, 0, 0.6)", "hovertemplate": "Simulation Task 69
Start: 102201.0
End: 102202.0
Duration: 1.0
Accelerator: 0
", "legendgroup": "simulation", "line": { "color": "red", "width": 1 }, "name": "Simulation Task 69", "showlegend": false, "type": "scatter", "x": [ 220, 221, 221, 220, 220 ], "y": [ 69.05, 69.05, 69.35, 69.35, 69.05 ] }, { "legendgroup": "schedule", "marker": { "color": "rgba(0, 100, 255, 0.6)", "size": 10 }, "mode": "markers", "name": "Task Schedule", "showlegend": true, "type": "scatter", "x": [ null ], "y": [ null ] }, { "legendgroup": "simulation", "marker": { "color": "rgba(255, 100, 0, 0.6)", "size": 10 }, "mode": "markers", "name": "Simulation Results", "showlegend": true, "type": "scatter", "x": [ null ], "y": [ null ] } ], "layout": { "height": 600, "hovermode": "closest", "template": { "data": { "bar": [ { "error_x": { "color": "#2a3f5f" }, "error_y": { "color": "#2a3f5f" }, "marker": { "line": { "color": "#E5ECF6", "width": 0.5 }, "pattern": { "fillmode": "overlay", "size": 10, "solidity": 0.2 } }, "type": "bar" } ], "barpolar": [ { "marker": { "line": { "color": "#E5ECF6", "width": 0.5 }, "pattern": { "fillmode": "overlay", "size": 10, "solidity": 0.2 } }, "type": "barpolar" } ], "carpet": [ { "aaxis": { "endlinecolor": "#2a3f5f", "gridcolor": "white", "linecolor": "white", "minorgridcolor": "white", "startlinecolor": "#2a3f5f" }, "baxis": { "endlinecolor": "#2a3f5f", "gridcolor": "white", "linecolor": "white", "minorgridcolor": "white", "startlinecolor": "#2a3f5f" }, "type": "carpet" } ], "choropleth": [ { "colorbar": { "outlinewidth": 0, "ticks": "" }, "type": "choropleth" } ], "contour": [ { "colorbar": { "outlinewidth": 0, "ticks": "" }, "colorscale": [ [ 0, "#0d0887" ], [ 0.1111111111111111, "#46039f" ], [ 0.2222222222222222, "#7201a8" ], [ 0.3333333333333333, "#9c179e" ], [ 0.4444444444444444, "#bd3786" ], [ 0.5555555555555556, "#d8576b" ], [ 0.6666666666666666, "#ed7953" ], [ 0.7777777777777778, "#fb9f3a" ], [ 0.8888888888888888, "#fdca26" ], [ 1, "#f0f921" ] ], "type": "contour" } ], "contourcarpet": [ { "colorbar": { "outlinewidth": 0, "ticks": "" }, "type": "contourcarpet" } ], "heatmap": [ { "colorbar": { "outlinewidth": 0, "ticks": "" }, "colorscale": [ [ 0, "#0d0887" ], [ 0.1111111111111111, "#46039f" ], [ 0.2222222222222222, "#7201a8" ], [ 0.3333333333333333, "#9c179e" ], [ 0.4444444444444444, "#bd3786" ], [ 0.5555555555555556, "#d8576b" ], [ 0.6666666666666666, "#ed7953" ], [ 0.7777777777777778, "#fb9f3a" ], [ 0.8888888888888888, "#fdca26" ], [ 1, "#f0f921" ] ], "type": "heatmap" } ], "histogram": [ { "marker": { "pattern": { "fillmode": "overlay", "size": 10, "solidity": 0.2 } }, "type": "histogram" } ], "histogram2d": [ { "colorbar": { "outlinewidth": 0, "ticks": "" }, "colorscale": [ [ 0, "#0d0887" ], [ 0.1111111111111111, "#46039f" ], [ 0.2222222222222222, "#7201a8" ], [ 0.3333333333333333, "#9c179e" ], [ 0.4444444444444444, "#bd3786" ], [ 0.5555555555555556, "#d8576b" ], [ 0.6666666666666666, "#ed7953" ], [ 0.7777777777777778, "#fb9f3a" ], [ 0.8888888888888888, "#fdca26" ], [ 1, "#f0f921" ] ], "type": "histogram2d" } ], "histogram2dcontour": [ { "colorbar": { "outlinewidth": 0, "ticks": "" }, "colorscale": [ [ 0, "#0d0887" ], [ 0.1111111111111111, "#46039f" ], [ 0.2222222222222222, "#7201a8" ], [ 0.3333333333333333, "#9c179e" ], [ 0.4444444444444444, "#bd3786" ], [ 0.5555555555555556, "#d8576b" ], [ 0.6666666666666666, "#ed7953" ], [ 0.7777777777777778, "#fb9f3a" ], [ 0.8888888888888888, "#fdca26" ], [ 1, "#f0f921" ] ], "type": "histogram2dcontour" } ], "mesh3d": [ { "colorbar": { "outlinewidth": 0, "ticks": "" }, "type": "mesh3d" } ], "parcoords": [ { "line": { "colorbar": { "outlinewidth": 0, "ticks": "" } }, "type": "parcoords" } ], "pie": [ { "automargin": true, "type": "pie" } ], "scatter": [ { "fillpattern": { "fillmode": "overlay", "size": 10, "solidity": 0.2 }, "type": "scatter" } ], "scatter3d": [ { "line": { "colorbar": { "outlinewidth": 0, "ticks": "" } }, "marker": { "colorbar": { "outlinewidth": 0, "ticks": "" } }, "type": "scatter3d" } ], "scattercarpet": [ { "marker": { "colorbar": { "outlinewidth": 0, "ticks": "" } }, "type": "scattercarpet" } ], "scattergeo": [ { "marker": { "colorbar": { "outlinewidth": 0, "ticks": "" } }, "type": "scattergeo" } ], "scattergl": [ { "marker": { "colorbar": { "outlinewidth": 0, "ticks": "" } }, "type": "scattergl" } ], "scattermap": [ { "marker": { "colorbar": { "outlinewidth": 0, "ticks": "" } }, "type": "scattermap" } ], "scattermapbox": [ { "marker": { "colorbar": { "outlinewidth": 0, "ticks": "" } }, "type": "scattermapbox" } ], "scatterpolar": [ { "marker": { "colorbar": { "outlinewidth": 0, "ticks": "" } }, "type": "scatterpolar" } ], "scatterpolargl": [ { "marker": { "colorbar": { "outlinewidth": 0, "ticks": "" } }, "type": "scatterpolargl" } ], "scatterternary": [ { "marker": { "colorbar": { "outlinewidth": 0, "ticks": "" } }, "type": "scatterternary" } ], "surface": [ { "colorbar": { "outlinewidth": 0, "ticks": "" }, "colorscale": [ [ 0, "#0d0887" ], [ 0.1111111111111111, "#46039f" ], [ 0.2222222222222222, "#7201a8" ], [ 0.3333333333333333, "#9c179e" ], [ 0.4444444444444444, "#bd3786" ], [ 0.5555555555555556, "#d8576b" ], [ 0.6666666666666666, "#ed7953" ], [ 0.7777777777777778, "#fb9f3a" ], [ 0.8888888888888888, "#fdca26" ], [ 1, "#f0f921" ] ], "type": "surface" } ], "table": [ { "cells": { "fill": { "color": "#EBF0F8" }, "line": { "color": "white" } }, "header": { "fill": { "color": "#C8D4E3" }, "line": { "color": "white" } }, "type": "table" } ] }, "layout": { "annotationdefaults": { "arrowcolor": "#2a3f5f", "arrowhead": 0, "arrowwidth": 1 }, "autotypenumbers": "strict", "coloraxis": { "colorbar": { "outlinewidth": 0, "ticks": "" } }, "colorscale": { "diverging": [ [ 0, "#8e0152" ], [ 0.1, "#c51b7d" ], [ 0.2, "#de77ae" ], [ 0.3, "#f1b6da" ], [ 0.4, "#fde0ef" ], [ 0.5, "#f7f7f7" ], [ 0.6, "#e6f5d0" ], [ 0.7, "#b8e186" ], [ 0.8, "#7fbc41" ], [ 0.9, "#4d9221" ], [ 1, "#276419" ] ], "sequential": [ [ 0, "#0d0887" ], [ 0.1111111111111111, "#46039f" ], [ 0.2222222222222222, "#7201a8" ], [ 0.3333333333333333, "#9c179e" ], [ 0.4444444444444444, "#bd3786" ], [ 0.5555555555555556, "#d8576b" ], [ 0.6666666666666666, "#ed7953" ], [ 0.7777777777777778, "#fb9f3a" ], [ 0.8888888888888888, "#fdca26" ], [ 1, "#f0f921" ] ], "sequentialminus": [ [ 0, "#0d0887" ], [ 0.1111111111111111, "#46039f" ], [ 0.2222222222222222, "#7201a8" ], [ 0.3333333333333333, "#9c179e" ], [ 0.4444444444444444, "#bd3786" ], [ 0.5555555555555556, "#d8576b" ], [ 0.6666666666666666, "#ed7953" ], [ 0.7777777777777778, "#fb9f3a" ], [ 0.8888888888888888, "#fdca26" ], [ 1, "#f0f921" ] ] }, "colorway": [ "#636efa", "#EF553B", "#00cc96", "#ab63fa", "#FFA15A", "#19d3f3", "#FF6692", "#B6E880", "#FF97FF", "#FECB52" ], "font": { "color": "#2a3f5f" }, "geo": { "bgcolor": "white", "lakecolor": "white", "landcolor": "#E5ECF6", "showlakes": true, "showland": true, "subunitcolor": "white" }, "hoverlabel": { "align": "left" }, "hovermode": "closest", "mapbox": { "style": "light" }, "paper_bgcolor": "white", "plot_bgcolor": "#E5ECF6", "polar": { "angularaxis": { "gridcolor": "white", "linecolor": "white", "ticks": "" }, "bgcolor": "#E5ECF6", "radialaxis": { "gridcolor": "white", "linecolor": "white", "ticks": "" } }, "scene": { "xaxis": { "backgroundcolor": "#E5ECF6", "gridcolor": "white", "gridwidth": 2, "linecolor": "white", "showbackground": true, "ticks": "", "zerolinecolor": "white" }, "yaxis": { "backgroundcolor": "#E5ECF6", "gridcolor": "white", "gridwidth": 2, "linecolor": "white", "showbackground": true, "ticks": "", "zerolinecolor": "white" }, "zaxis": { "backgroundcolor": "#E5ECF6", "gridcolor": "white", "gridwidth": 2, "linecolor": "white", "showbackground": true, "ticks": "", "zerolinecolor": "white" } }, "shapedefaults": { "line": { "color": "#2a3f5f" } }, "ternary": { "aaxis": { "gridcolor": "white", "linecolor": "white", "ticks": "" }, "baxis": { "gridcolor": "white", "linecolor": "white", "ticks": "" }, "bgcolor": "#E5ECF6", "caxis": { "gridcolor": "white", "linecolor": "white", "ticks": "" } }, "title": { "x": 0.05 }, "xaxis": { "automargin": true, "gridcolor": "white", "linecolor": "white", "ticks": "", "title": { "standoff": 15 }, "zerolinecolor": "white", "zerolinewidth": 2 }, "yaxis": { "automargin": true, "gridcolor": "white", "linecolor": "white", "ticks": "", "title": { "standoff": 15 }, "zerolinecolor": "white", "zerolinewidth": 2 } } }, "title": { "text": "Timeline Overlay Comparison (Normalized Time)" }, "xaxis": { "title": { "text": "Normalized Time" } }, "yaxis": { "title": { "text": "Task ID" } } } } }, "metadata": {}, "output_type": "display_data" }, { "name": "stdout", "output_type": "stream", "text": [ "\n", "=== FINAL ANALYSIS SUMMARY ===\n", "1. Both datasets contain similar task structures but with different timing characteristics\n", "2. The simulation results show more detailed accelerator assignments\n", "3. Duration differences suggest different execution environments or optimizations\n", "4. Normalized comparisons help identify structural similarities despite timing differences\n", "5. The overlay plot shows how tasks align between the two schedules\n" ] } ], "source": [ "def create_summary_table():\n", " \"\"\"Create a comprehensive summary table\"\"\"\n", " \n", " # Calculate statistics for both datasets\n", " stats_data = {\n", " 'Metric': [\n", " 'Total Tasks',\n", " 'Total Execution Time',\n", " 'Average Task Duration',\n", " 'Median Task Duration',\n", " 'Min Task Duration',\n", " 'Max Task Duration',\n", " 'Tasks with Zero Duration',\n", " 'Task Duration Std Dev'\n", " ],\n", " 'Task Schedule': [\n", " len(df1),\n", " f\"{df1['End'].max() - df1['Start'].min():.2f}\",\n", " f\"{df1['Duration'].mean():.2f}\",\n", " f\"{df1['Duration'].median():.2f}\",\n", " f\"{df1['Duration'].min():.2f}\",\n", " f\"{df1['Duration'].max():.2f}\",\n", " len(df1[df1['Duration'] == 0]),\n", " f\"{df1['Duration'].std():.2f}\"\n", " ],\n", " 'Simulation Results': [\n", " len(df2),\n", " f\"{df2['End'].max() - df2['Start'].min():.2f}\",\n", " f\"{df2['Duration'].mean():.2f}\",\n", " f\"{df2['Duration'].median():.2f}\",\n", " f\"{df2['Duration'].min():.2f}\",\n", " f\"{df2['Duration'].max():.2f}\",\n", " len(df2[df2['Duration'] == 0]),\n", " f\"{df2['Duration'].std():.2f}\"\n", " ]\n", " }\n", " \n", " stats_df = pd.DataFrame(stats_data)\n", " \n", " print(\"=== COMPREHENSIVE SUMMARY TABLE ===\")\n", " print(stats_df.to_string(index=False))\n", " \n", " # Task execution pattern analysis\n", " print(\"\\n=== TASK EXECUTION PATTERN ANALYSIS ===\")\n", " \n", " # Check for parallelism in both datasets\n", " def analyze_parallelism(df, name):\n", " overlapping_tasks = 0\n", " total_comparisons = 0\n", " \n", " for i in range(len(df)):\n", " for j in range(i+1, len(df)):\n", " task1 = df.iloc[i]\n", " task2 = df.iloc[j]\n", " \n", " # Check if tasks overlap\n", " if (task1['Start'] < task2['End'] and task2['Start'] < task1['End']):\n", " overlapping_tasks += 1\n", " total_comparisons += 1\n", " \n", " parallelism_ratio = overlapping_tasks / total_comparisons if total_comparisons > 0 else 0\n", " \n", " print(f\"{name}:\")\n", " print(f\" - Overlapping task pairs: {overlapping_tasks}\")\n", " print(f\" - Total task pairs: {total_comparisons}\")\n", " print(f\" - Parallelism ratio: {parallelism_ratio:.3f}\")\n", " \n", " return parallelism_ratio\n", " \n", " para1 = analyze_parallelism(df1, \"Task Schedule\")\n", " para2 = analyze_parallelism(df2, \"Simulation Results\")\n", " \n", " # Accelerator usage analysis (only for simulation results)\n", " if 'accelerator' in df2.columns:\n", " print(f\"\\n=== ACCELERATOR USAGE (Simulation Results) ===\")\n", " accel_usage = df2['accelerator'].value_counts().sort_index()\n", " print(\"Tasks per accelerator:\")\n", " for accel, count in accel_usage.items():\n", " print(f\" Accelerator {accel}: {count} tasks\")\n", " \n", " return stats_df\n", "\n", "def create_timeline_overlay():\n", " \"\"\"Create an overlay comparison showing both datasets on the same timeline\"\"\"\n", " \n", " fig = go.Figure()\n", " \n", " # Add Dataset 1 tasks (normalized)\n", " for i, row in df1.iterrows():\n", " fig.add_trace(\n", " go.Scatter(\n", " x=[row['Start_Normalized'], row['End_Normalized'], row['End_Normalized'], row['Start_Normalized'], row['Start_Normalized']],\n", " y=[row['Task_ID']-0.35, row['Task_ID']-0.35, row['Task_ID']-0.05, row['Task_ID']-0.05, row['Task_ID']-0.35],\n", " fill='toself',\n", " fillcolor='rgba(0, 100, 255, 0.6)',\n", " line=dict(color='blue', width=1),\n", " name=f\"Schedule Task {row['Task_ID']}\",\n", " legendgroup=\"schedule\",\n", " showlegend=i==0,\n", " hovertemplate=f\"Schedule Task {row['Task_ID']}
\" +\n", " f\"Start: {row['Start']:.1f}
\" +\n", " f\"End: {row['End']:.1f}
\" +\n", " f\"Duration: {row['Duration']:.1f}
\" +\n", " \"\"\n", " )\n", " )\n", " \n", " # Add Dataset 2 tasks (normalized)\n", " for i, row in df2.iterrows():\n", " fig.add_trace(\n", " go.Scatter(\n", " x=[row['Start_Normalized'], row['End_Normalized'], row['End_Normalized'], row['Start_Normalized'], row['Start_Normalized']],\n", " y=[row['Task_ID']+0.05, row['Task_ID']+0.05, row['Task_ID']+0.35, row['Task_ID']+0.35, row['Task_ID']+0.05],\n", " fill='toself',\n", " fillcolor='rgba(255, 100, 0, 0.6)',\n", " line=dict(color='red', width=1),\n", " name=f\"Simulation Task {row['Task_ID']}\",\n", " legendgroup=\"simulation\",\n", " showlegend=i==0,\n", " hovertemplate=f\"Simulation Task {row['Task_ID']}
\" +\n", " f\"Start: {row['Start']:.1f}
\" +\n", " f\"End: {row['End']:.1f}
\" +\n", " f\"Duration: {row['Duration']:.1f}
\" +\n", " f\"Accelerator: {row.get('accelerator', 'N/A')}
\" +\n", " \"\"\n", " )\n", " )\n", " \n", " # Add legend entries\n", " fig.add_trace(go.Scatter(x=[None], y=[None], mode='markers', \n", " marker=dict(size=10, color='rgba(0, 100, 255, 0.6)'),\n", " legendgroup=\"schedule\", showlegend=True, name=\"Task Schedule\"))\n", " fig.add_trace(go.Scatter(x=[None], y=[None], mode='markers', \n", " marker=dict(size=10, color='rgba(255, 100, 0, 0.6)'),\n", " legendgroup=\"simulation\", showlegend=True, name=\"Simulation Results\"))\n", " \n", " fig.update_layout(\n", " title=\"Timeline Overlay Comparison (Normalized Time)\",\n", " xaxis_title=\"Normalized Time\",\n", " yaxis_title=\"Task ID\",\n", " height=600,\n", " hovermode='closest'\n", " )\n", " \n", " return fig\n", "\n", "# Create and display the summary\n", "summary_df = create_summary_table()\n", "\n", "# Create and display the timeline overlay\n", "overlay_fig = create_timeline_overlay()\n", "overlay_fig.show()\n", "\n", "print(\"\\n=== FINAL ANALYSIS SUMMARY ===\")\n", "print(\"1. Both datasets contain similar task structures but with different timing characteristics\")\n", "print(\"2. The simulation results show more detailed accelerator assignments\")\n", "print(\"3. Duration differences suggest different execution environments or optimizations\")\n", "print(\"4. Normalized comparisons help identify structural similarities despite timing differences\")\n", "print(\"5. The overlay plot shows how tasks align between the two schedules\")" ] }, { "cell_type": "code", "execution_count": 33, "id": "d7a5194e", "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "=== DATA TYPE DEBUGGING ===\n", "df1 Duration column type: float64\n", "df2 Duration column type: int64\n", "Sample values from df1['Duration']: [1.0, 4.0, 7.0, 90.0, 5.0]\n", "Sample values from df2['Duration']: [0, 1, 4, 7, 5]\n", "\n", "Checking for non-numeric values:\n", "df1 Duration non-numeric: 0\n", "df2 Duration non-numeric: 0\n", "\n", "Comparison DataFrame info:\n", "Duration_1 type: float64\n", "Duration_2 type: int64\n", "Duration_Diff type: float64\n", "\n", "Actual comparison values (first 10):\n", " Task_ID Duration_1 Duration_2 Duration_Diff\n", "0 0 1.0 1 0.0\n", "1 1 4.0 4 0.0\n", "2 2 7.0 7 0.0\n", "3 3 90.0 37 -53.0\n", "4 4 5.0 5 0.0\n", "5 5 0.0 0 0.0\n", "6 6 90.0 73 -17.0\n", "7 7 5.0 5 0.0\n", "8 8 1.0 1 0.0\n", "9 9 3.0 3 0.0\n", "\n", "Manual calculation check:\n", "Task 0.0: 1.0 - 1.0 = 0.0 (stored: 0.0)\n", "Task 1.0: 4.0 - 4.0 = 0.0 (stored: 0.0)\n", "Task 2.0: 7.0 - 7.0 = 0.0 (stored: 0.0)\n", "Task 3.0: 90.0 - 37.0 = -53.0 (stored: -53.0)\n", "Task 4.0: 5.0 - 5.0 = 0.0 (stored: 0.0)\n" ] } ], "source": [ "# Debug: Check data types and fix the issue\n", "print(\"=== DATA TYPE DEBUGGING ===\")\n", "print(\"df1 Duration column type:\", df1['Duration'].dtype)\n", "print(\"df2 Duration column type:\", df2['Duration'].dtype)\n", "print(\"Sample values from df1['Duration']:\", df1['Duration'].head().tolist())\n", "print(\"Sample values from df2['Duration']:\", df2['Duration'].head().tolist())\n", "\n", "# Check if there are any non-numeric values\n", "print(\"\\nChecking for non-numeric values:\")\n", "print(\"df1 Duration non-numeric:\", df1['Duration'].apply(lambda x: not isinstance(x, (int, float))).sum())\n", "print(\"df2 Duration non-numeric:\", df2['Duration'].apply(lambda x: not isinstance(x, (int, float))).sum())\n", "\n", "# Let's look at the actual comparison_df values\n", "print(\"\\nComparison DataFrame info:\")\n", "print(\"Duration_1 type:\", comparison_df['Duration_1'].dtype)\n", "print(\"Duration_2 type:\", comparison_df['Duration_2'].dtype)\n", "print(\"Duration_Diff type:\", comparison_df['Duration_Diff'].dtype)\n", "\n", "# Check some actual values\n", "print(\"\\nActual comparison values (first 10):\")\n", "print(comparison_df[['Task_ID', 'Duration_1', 'Duration_2', 'Duration_Diff']].head(10))\n", "\n", "# Check if the issue is with the difference calculation\n", "print(\"\\nManual calculation check:\")\n", "for i in range(5):\n", " row = comparison_df.iloc[i]\n", " manual_diff = float(row['Duration_2']) - float(row['Duration_1'])\n", " print(f\"Task {row['Task_ID']}: {row['Duration_1']} - {row['Duration_2']} = {manual_diff} (stored: {row['Duration_Diff']})\")" ] }, { "cell_type": "code", "execution_count": 34, "id": "8a6a068a", "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "=== FIXED COMPARISON ANALYSIS ===\n", "Common tasks between datasets: 70\n", "Tasks only in Dataset 1: 0\n", "Tasks only in Dataset 2: 1\n", "\n", "=== DURATION COMPARISON (FIXED) ===\n", "Average duration difference: -2.70\n", "Median duration difference: 0.00\n", "Max duration difference: 0.00\n", "Min duration difference: -53.00\n", "Standard deviation of differences: 9.74\n", "\n", "=== START TIME COMPARISON (Normalized, FIXED) ===\n", "Average start time difference: -104.69\n", "Median start time difference: -114.00\n", "Max start time difference: 0.00\n", "Min start time difference: -168.00\n", "\n", "=== TASKS WITH LARGEST DIFFERENCES (FIXED) ===\n", "Top 10 tasks with largest absolute duration differences:\n", " Task_ID Duration_1 Duration_2 Duration_Diff Accelerator\n", " 3 90.0 37.0 -53.0 10\n", " 10 92.0 39.0 -53.0 7\n", " 16 33.0 14.0 -19.0 3\n", " 34 33.0 14.0 -19.0 2\n", " 52 37.0 19.0 -18.0 1\n", " 6 90.0 73.0 -17.0 6\n", " 64 19.0 9.0 -10.0 4\n", " 0 1.0 1.0 0.0 10\n", " 1 4.0 4.0 0.0 10\n", " 2 7.0 7.0 0.0 10\n", "\n", "Top 10 tasks with largest positive duration differences:\n", "No tasks with positive duration differences found\n", "\n", "Top 10 tasks with largest negative duration differences:\n", " Task_ID Duration_1 Duration_2 Duration_Diff Accelerator\n", " 3 90.0 37.0 -53.0 10\n", " 10 92.0 39.0 -53.0 7\n", " 16 33.0 14.0 -19.0 3\n", " 34 33.0 14.0 -19.0 2\n", " 52 37.0 19.0 -18.0 1\n", " 6 90.0 73.0 -17.0 6\n", " 64 19.0 9.0 -10.0 4\n", "\n", "Tasks with exactly matching durations: 63\n", "Sample of tasks with zero difference:\n", " Task_ID Duration_1 Duration_2 Duration_Diff Accelerator\n", " 0 1.0 1.0 0.0 10\n", " 1 4.0 4.0 0.0 10\n", " 2 7.0 7.0 0.0 10\n", " 4 5.0 5.0 0.0 6\n", " 5 0.0 0.0 0.0 6\n", " 7 5.0 5.0 0.0 3\n", " 8 1.0 1.0 0.0 7\n", " 9 3.0 3.0 0.0 7\n", " 11 5.0 5.0 0.0 3\n", " 12 0.0 0.0 0.0 3\n" ] } ], "source": [ "def load_and_normalize_data_fixed():\n", " \"\"\"Fixed version with proper data type handling\"\"\"\n", " \n", " # Load first dataset (task_schedule.json)\n", " with open('/home/sfischer/Documents/projects/wk_LinProg/LinProg_Scripts/gantt_output/task_schedule.json', 'r') as f:\n", " data1 = json.load(f)\n", " \n", " # Load second dataset (simulation results)\n", " with open('/home/sfischer/Documents/projects/wk_LinProg/simulation/results/log_raw/gantt_timing_combined_log_LinProg_opt_test_rep50_link576_Opt_NoC_1_Comp_0.1_scratch10000_comp1.json', 'r') as f:\n", " data2 = json.load(f)\n", " \n", " # Convert first dataset to DataFrame with explicit type conversion\n", " df1 = pd.DataFrame(data1)\n", " df1['Source'] = 'Task Schedule'\n", " df1['Task_ID'] = df1['Task'].str.extract(r'(\\d+)').astype(int)\n", " \n", " # Ensure numeric types for timing columns\n", " df1['Start'] = pd.to_numeric(df1['Start'], errors='coerce')\n", " df1['End'] = pd.to_numeric(df1['End'], errors='coerce')\n", " df1['Duration'] = pd.to_numeric(df1['Duration'], errors='coerce')\n", " \n", " # Convert second dataset to DataFrame with explicit type conversion\n", " df2 = pd.DataFrame(data2['tasks'])\n", " df2['Source'] = 'Simulation Results'\n", " df2['Task_ID'] = df2['task_id'].astype(int)\n", " df2['Task'] = 'Task ' + df2['task_id'].astype(str)\n", " \n", " # Ensure numeric types for timing columns\n", " df2['Start'] = pd.to_numeric(df2['start_time'], errors='coerce')\n", " df2['End'] = pd.to_numeric(df2['end_time'], errors='coerce')\n", " df2['Duration'] = pd.to_numeric(df2['duration'], errors='coerce')\n", " \n", " # Remove any rows with NaN values\n", " df1 = df1.dropna(subset=['Start', 'End', 'Duration'])\n", " df2 = df2.dropna(subset=['Start', 'End', 'Duration'])\n", " \n", " # Normalize timing values to start from 0\n", " df1['Start_Normalized'] = df1['Start'] - df1['Start'].min()\n", " df1['End_Normalized'] = df1['End'] - df1['Start'].min()\n", " df1['Duration_Normalized'] = df1['Duration']\n", " \n", " df2['Start_Normalized'] = df2['Start'] - df2['Start'].min()\n", " df2['End_Normalized'] = df2['End'] - df2['Start'].min()\n", " df2['Duration_Normalized'] = df2['Duration']\n", " \n", " # Scale to same time range for comparison\n", " max_time_1 = df1['End_Normalized'].max()\n", " max_time_2 = df2['End_Normalized'].max()\n", " \n", " # Scale both to 0-1 range\n", " df1['Start_Scaled'] = df1['Start_Normalized'] / max_time_1\n", " df1['End_Scaled'] = df1['End_Normalized'] / max_time_1\n", " df1['Duration_Scaled'] = df1['Duration_Normalized'] / max_time_1\n", " \n", " df2['Start_Scaled'] = df2['Start_Normalized'] / max_time_2\n", " df2['End_Scaled'] = df2['End_Normalized'] / max_time_2\n", " df2['Duration_Scaled'] = df2['Duration_Normalized'] / max_time_2\n", " \n", " return df1, df2\n", "\n", "def analyze_differences_fixed():\n", " \"\"\"Fixed version of difference analysis with proper type handling\"\"\"\n", " \n", " # Use the fixed data\n", " df1_fixed, df2_fixed = load_and_normalize_data_fixed()\n", " \n", " # Merge datasets by Task_ID for comparison\n", " common_tasks = set(df1_fixed['Task_ID']) & set(df2_fixed['Task_ID'])\n", " \n", " comparison_data = []\n", " \n", " for task_id in common_tasks:\n", " task1 = df1_fixed[df1_fixed['Task_ID'] == task_id].iloc[0]\n", " task2 = df2_fixed[df2_fixed['Task_ID'] == task_id].iloc[0]\n", " \n", " # Ensure all values are properly converted to float\n", " duration_1 = float(task1['Duration'])\n", " duration_2 = float(task2['Duration'])\n", " start_1_norm = float(task1['Start_Normalized'])\n", " start_2_norm = float(task2['Start_Normalized'])\n", " \n", " comparison_data.append({\n", " 'Task_ID': int(task_id),\n", " 'Duration_1': duration_1,\n", " 'Duration_2': duration_2,\n", " 'Duration_Diff': duration_2 - duration_1,\n", " 'Duration_Ratio': duration_2 / duration_1 if duration_1 > 0 else float('inf'),\n", " 'Start_1_Norm': start_1_norm,\n", " 'Start_2_Norm': start_2_norm,\n", " 'Start_Diff_Norm': start_2_norm - start_1_norm,\n", " 'Accelerator': task2.get('accelerator', 'N/A')\n", " })\n", " \n", " comparison_df_fixed = pd.DataFrame(comparison_data)\n", " \n", " print(\"=== FIXED COMPARISON ANALYSIS ===\")\n", " print(f\"Common tasks between datasets: {len(common_tasks)}\")\n", " print(f\"Tasks only in Dataset 1: {len(set(df1_fixed['Task_ID']) - set(df2_fixed['Task_ID']))}\")\n", " print(f\"Tasks only in Dataset 2: {len(set(df2_fixed['Task_ID']) - set(df1_fixed['Task_ID']))}\")\n", " \n", " print(\"\\n=== DURATION COMPARISON (FIXED) ===\")\n", " print(f\"Average duration difference: {comparison_df_fixed['Duration_Diff'].mean():.2f}\")\n", " print(f\"Median duration difference: {comparison_df_fixed['Duration_Diff'].median():.2f}\")\n", " print(f\"Max duration difference: {comparison_df_fixed['Duration_Diff'].max():.2f}\")\n", " print(f\"Min duration difference: {comparison_df_fixed['Duration_Diff'].min():.2f}\")\n", " print(f\"Standard deviation of differences: {comparison_df_fixed['Duration_Diff'].std():.2f}\")\n", " \n", " print(\"\\n=== START TIME COMPARISON (Normalized, FIXED) ===\")\n", " print(f\"Average start time difference: {comparison_df_fixed['Start_Diff_Norm'].mean():.2f}\")\n", " print(f\"Median start time difference: {comparison_df_fixed['Start_Diff_Norm'].median():.2f}\")\n", " print(f\"Max start time difference: {comparison_df_fixed['Start_Diff_Norm'].max():.2f}\")\n", " print(f\"Min start time difference: {comparison_df_fixed['Start_Diff_Norm'].min():.2f}\")\n", " \n", " print(\"\\n=== TASKS WITH LARGEST DIFFERENCES (FIXED) ===\")\n", " # Sort by absolute difference to see both positive and negative differences\n", " comparison_df_fixed['Abs_Duration_Diff'] = abs(comparison_df_fixed['Duration_Diff'])\n", " \n", " print(\"Top 10 tasks with largest absolute duration differences:\")\n", " top_diff = comparison_df_fixed.nlargest(10, 'Abs_Duration_Diff')[['Task_ID', 'Duration_1', 'Duration_2', 'Duration_Diff', 'Accelerator']]\n", " print(top_diff.to_string(index=False))\n", " \n", " print(\"\\nTop 10 tasks with largest positive duration differences:\")\n", " positive_diff = comparison_df_fixed[comparison_df_fixed['Duration_Diff'] > 0]\n", " if len(positive_diff) > 0:\n", " top_pos_diff = positive_diff.nlargest(10, 'Duration_Diff')[['Task_ID', 'Duration_1', 'Duration_2', 'Duration_Diff', 'Accelerator']]\n", " print(top_pos_diff.to_string(index=False))\n", " else:\n", " print(\"No tasks with positive duration differences found\")\n", " \n", " print(\"\\nTop 10 tasks with largest negative duration differences:\")\n", " negative_diff = comparison_df_fixed[comparison_df_fixed['Duration_Diff'] < 0]\n", " if len(negative_diff) > 0:\n", " top_neg_diff = negative_diff.nsmallest(10, 'Duration_Diff')[['Task_ID', 'Duration_1', 'Duration_2', 'Duration_Diff', 'Accelerator']]\n", " print(top_neg_diff.to_string(index=False))\n", " else:\n", " print(\"No tasks with negative duration differences found\")\n", " \n", " # Show tasks with exact matches (zero difference)\n", " zero_diff = comparison_df_fixed[comparison_df_fixed['Duration_Diff'] == 0.0]\n", " print(f\"\\nTasks with exactly matching durations: {len(zero_diff)}\")\n", " if len(zero_diff) > 0:\n", " print(\"Sample of tasks with zero difference:\")\n", " print(zero_diff[['Task_ID', 'Duration_1', 'Duration_2', 'Duration_Diff', 'Accelerator']].head(10).to_string(index=False))\n", " \n", " return comparison_df_fixed, df1_fixed, df2_fixed\n", "\n", "# Run the fixed analysis\n", "comparison_df_fixed, df1_fixed, df2_fixed = analyze_differences_fixed()" ] }, { "cell_type": "code", "execution_count": 35, "id": "800e72d5", "metadata": {}, "outputs": [ { "data": { "application/vnd.plotly.v1+json": { "config": { "plotlyServerURL": "https://plot.ly" }, "data": [ { "customdata": { "bdata": "AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACASsAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAMcAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAIBKwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAzwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAzwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAywAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAkwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA=", "dtype": "f8" }, "hovertemplate": "Task %{text}
Dataset 1: %{x:.1f}
Dataset 2: %{y:.1f}
Difference: %{customdata:.1f}
", "marker": { "color": "blue", "opacity": 0.6, "size": 8 }, "mode": "markers", "name": "Duration Comparison", "text": { "bdata": "AAAAAAAAAAAAAAAAAADwPwAAAAAAAABAAAAAAAAACEAAAAAAAAAQQAAAAAAAABRAAAAAAAAAGEAAAAAAAAAcQAAAAAAAACBAAAAAAAAAIkAAAAAAAAAkQAAAAAAAACZAAAAAAAAAKEAAAAAAAAAqQAAAAAAAACxAAAAAAAAALkAAAAAAAAAwQAAAAAAAADFAAAAAAAAAMkAAAAAAAAAzQAAAAAAAADRAAAAAAAAANUAAAAAAAAA2QAAAAAAAADdAAAAAAAAAOEAAAAAAAAA5QAAAAAAAADpAAAAAAAAAO0AAAAAAAAA8QAAAAAAAAD1AAAAAAAAAPkAAAAAAAAA/QAAAAAAAAEBAAAAAAACAQEAAAAAAAABBQAAAAAAAgEFAAAAAAAAAQkAAAAAAAIBCQAAAAAAAAENAAAAAAACAQ0AAAAAAAABEQAAAAAAAgERAAAAAAAAARUAAAAAAAIBFQAAAAAAAAEZAAAAAAACARkAAAAAAAABHQAAAAAAAgEdAAAAAAAAASEAAAAAAAIBIQAAAAAAAAElAAAAAAACASUAAAAAAAABKQAAAAAAAgEpAAAAAAAAAS0AAAAAAAIBLQAAAAAAAAExAAAAAAACATEAAAAAAAABNQAAAAAAAgE1AAAAAAAAATkAAAAAAAIBOQAAAAAAAAE9AAAAAAACAT0AAAAAAAABQQAAAAAAAQFBAAAAAAACAUEAAAAAAAMBQQAAAAAAAAFFAAAAAAABAUUA=", "dtype": "f8" }, "type": "scatter", "x": { "bdata": "AAAAAAAA8D8AAAAAAAAQQAAAAAAAABxAAAAAAACAVkAAAAAAAAAUQAAAAAAAAAAAAAAAAACAVkAAAAAAAAAUQAAAAAAAAPA/AAAAAAAACEAAAAAAAABXQAAAAAAAABRAAAAAAAAAAAAAAAAAAAAcQAAAAAAAAPA/AAAAAAAAAAAAAAAAAIBAQAAAAAAAAPA/AAAAAAAAAEAAAAAAAADwPwAAAAAAAABAAAAAAAAAAEAAAAAAAADwPwAAAAAAAPA/AAAAAAAAAAAAAAAAAADwPwAAAAAAAPA/AAAAAAAAAEAAAAAAAADwPwAAAAAAAABAAAAAAAAAAEAAAAAAAADwPwAAAAAAAPA/AAAAAAAAAAAAAAAAAIBAQAAAAAAAAPA/AAAAAAAAAEAAAAAAAADwPwAAAAAAAABAAAAAAAAAAEAAAAAAAADwPwAAAAAAAPA/AAAAAAAAAAAAAAAAAADwPwAAAAAAAPA/AAAAAAAAAEAAAAAAAADwPwAAAAAAAABAAAAAAAAAAEAAAAAAAADwPwAAAAAAAPA/AAAAAAAAAAAAAAAAAIBCQAAAAAAAAABAAAAAAAAAIEAAAAAAAAAIQAAAAAAAAPA/AAAAAAAAAAAAAAAAAAAAQAAAAAAAAPA/AAAAAAAAAEAAAAAAAAAAQAAAAAAAAPA/AAAAAAAAAEAAAAAAAAAzQAAAAAAAAABAAAAAAAAAAEAAAAAAAADwPwAAAAAAAPA/AAAAAAAA8D8=", "dtype": "f8" }, "xaxis": "x", "y": { "bdata": "AAAAAAAA8D8AAAAAAAAQQAAAAAAAABxAAAAAAACAQkAAAAAAAAAUQAAAAAAAAAAAAAAAAABAUkAAAAAAAAAUQAAAAAAAAPA/AAAAAAAACEAAAAAAAIBDQAAAAAAAABRAAAAAAAAAAAAAAAAAAAAcQAAAAAAAAPA/AAAAAAAAAAAAAAAAAAAsQAAAAAAAAPA/AAAAAAAAAEAAAAAAAADwPwAAAAAAAABAAAAAAAAAAEAAAAAAAADwPwAAAAAAAPA/AAAAAAAAAAAAAAAAAADwPwAAAAAAAPA/AAAAAAAAAEAAAAAAAADwPwAAAAAAAABAAAAAAAAAAEAAAAAAAADwPwAAAAAAAPA/AAAAAAAAAAAAAAAAAAAsQAAAAAAAAPA/AAAAAAAAAEAAAAAAAADwPwAAAAAAAABAAAAAAAAAAEAAAAAAAADwPwAAAAAAAPA/AAAAAAAAAAAAAAAAAADwPwAAAAAAAPA/AAAAAAAAAEAAAAAAAADwPwAAAAAAAABAAAAAAAAAAEAAAAAAAADwPwAAAAAAAPA/AAAAAAAAAAAAAAAAAAAzQAAAAAAAAABAAAAAAAAAIEAAAAAAAAAIQAAAAAAAAPA/AAAAAAAAAAAAAAAAAAAAQAAAAAAAAPA/AAAAAAAAAEAAAAAAAAAAQAAAAAAAAPA/AAAAAAAAAEAAAAAAAAAiQAAAAAAAAABAAAAAAAAAAEAAAAAAAADwPwAAAAAAAPA/AAAAAAAA8D8=", "dtype": "f8" }, "yaxis": "y" }, { "line": { "color": "red", "dash": "dash" }, "mode": "lines", "name": "Equal Duration", "showlegend": false, "type": "scatter", "x": [ 0, 92 ], "xaxis": "x", "y": [ 0, 92 ], "yaxis": "y" }, { "hovertemplate": "Task %{x}
Difference: %{y:.1f}
", "marker": { "color": [ "gray", "gray", "gray", "red", "gray", "gray", "red", "gray", "gray", "gray", "red", "gray", "gray", "gray", "gray", "gray", "red", "gray", "gray", "gray", "gray", "gray", "gray", "gray", "gray", "gray", "gray", "gray", "gray", "gray", "gray", "gray", "gray", "gray", "red", "gray", "gray", "gray", "gray", "gray", "gray", "gray", "gray", "gray", "gray", "gray", "gray", "gray", "gray", "gray", "gray", "gray", "red", "gray", "gray", "gray", "gray", "gray", "gray", "gray", "gray", "gray", "gray", "gray", "red", "gray", "gray", "gray", "gray", "gray" ] }, "name": "Duration Difference", "type": "bar", "x": { "bdata": "AAECAwQFBgcICQoLDA0ODxAREhMUFRYXGBkaGxwdHh8gISIjJCUmJygpKissLS4vMDEyMzQ1Njc4OTo7PD0+P0BBQkNERQ==", "dtype": "i1" }, "xaxis": "x2", "y": { "bdata": "AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACASsAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAMcAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAIBKwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAzwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAzwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAywAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAkwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA=", "dtype": "f8" }, "yaxis": "y2" }, { "customdata": { "bdata": "AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAEBVwAAAAAAAgErAAAAAAACASsAAAAAAAEBUwAAAAAAAgErAAAAAAACASsAAAAAAAIBKwAAAAAAAgFrAAAAAAABAVMAAAAAAAIBUwAAAAAAAgFLAAAAAAABAVMAAAAAAAEBUwAAAAAAAwFvAAAAAAACAW8AAAAAAAEBZwAAAAAAAQFnAAAAAAABAWcAAAAAAAMBZwAAAAAAAQFnAAAAAAAAAWcAAAAAAAIBbwAAAAAAAQFnAAAAAAADAWMAAAAAAAABZwAAAAAAAwFjAAAAAAACAWMAAAAAAAMBYwAAAAAAAgFjAAAAAAAAAWcAAAAAAAABZwAAAAAAAQGDAAAAAAAAgYMAAAAAAAABewAAAAAAAAF7AAAAAAAAAXsAAAAAAAIBewAAAAAAAAF7AAAAAAADAXcAAAAAAACBgwAAAAAAAAF7AAAAAAACAXcAAAAAAAMBdwAAAAAAAgF3AAAAAAABAXcAAAAAAAIBdwAAAAAAAQF3AAAAAAADAXcAAAAAAAMBdwAAAAAAAAF7AAAAAAADAXcAAAAAAAMBdwAAAAAAAQF3AAAAAAAAgYcAAAAAAAABlwAAAAAAAAGTAAAAAAADgY8AAAAAAAOBjwAAAAAAAIGHAAAAAAAAgYcAAAAAAACBhwAAAAAAAYGLAAAAAAABgYsAAAAAAAOBgwAAAAAAAwGDAAAAAAABAY8A=", "dtype": "f8" }, "hovertemplate": "Task %{text}
Dataset 1: %{x:.1f}
Dataset 2: %{y:.1f}
Difference: %{customdata:.1f}
", "marker": { "color": "orange", "opacity": 0.6, "size": 8 }, "mode": "markers", "name": "Start Time Comparison", "text": { "bdata": "AAAAAAAAAAAAAAAAAADwPwAAAAAAAABAAAAAAAAACEAAAAAAAAAQQAAAAAAAABRAAAAAAAAAGEAAAAAAAAAcQAAAAAAAACBAAAAAAAAAIkAAAAAAAAAkQAAAAAAAACZAAAAAAAAAKEAAAAAAAAAqQAAAAAAAACxAAAAAAAAALkAAAAAAAAAwQAAAAAAAADFAAAAAAAAAMkAAAAAAAAAzQAAAAAAAADRAAAAAAAAANUAAAAAAAAA2QAAAAAAAADdAAAAAAAAAOEAAAAAAAAA5QAAAAAAAADpAAAAAAAAAO0AAAAAAAAA8QAAAAAAAAD1AAAAAAAAAPkAAAAAAAAA/QAAAAAAAAEBAAAAAAACAQEAAAAAAAABBQAAAAAAAgEFAAAAAAAAAQkAAAAAAAIBCQAAAAAAAAENAAAAAAACAQ0AAAAAAAABEQAAAAAAAgERAAAAAAAAARUAAAAAAAIBFQAAAAAAAAEZAAAAAAACARkAAAAAAAABHQAAAAAAAgEdAAAAAAAAASEAAAAAAAIBIQAAAAAAAAElAAAAAAACASUAAAAAAAABKQAAAAAAAgEpAAAAAAAAAS0AAAAAAAIBLQAAAAAAAAExAAAAAAACATEAAAAAAAABNQAAAAAAAgE1AAAAAAAAATkAAAAAAAIBOQAAAAAAAAE9AAAAAAACAT0AAAAAAAABQQAAAAAAAQFBAAAAAAACAUEAAAAAAAMBQQAAAAAAAAFFAAAAAAABAUUA=", "dtype": "f8" }, "type": "scatter", "x": { "bdata": "AAAAAAAAAAAAAAAAAADwPwAAAAAAABRAAAAAAAAAKEAAAAAAAEBYQAAAAAAAgFlAAAAAAACAWUAAAAAAAGBpQAAAAAAAgFlAAAAAAADAWUAAAAAAAIBaQAAAAAAAwGhAAAAAAAAAakAAAAAAACBqQAAAAAAAAGpAAAAAAAAAa0AAAAAAAABrQAAAAAAAwG5AAAAAAADgbkAAAAAAACBuQAAAAAAAQG5AAAAAAACAbkAAAAAAAOBtQAAAAAAAAG5AAAAAAAAgb0AAAAAAADBwQAAAAAAAAHBAAAAAAAAQcEAAAAAAAGBvQAAAAAAAgG9AAAAAAADAb0AAAAAAACBvQAAAAAAAQG9AAAAAAABAcEAAAAAAAEBwQAAAAAAAIHJAAAAAAAAwckAAAAAAANBxQAAAAAAA4HFAAAAAAAAAckAAAAAAALBxQAAAAAAAwHFAAAAAAABQckAAAAAAAPByQAAAAAAAwHJAAAAAAADQckAAAAAAAHByQAAAAAAAgHJAAAAAAACgckAAAAAAAFByQAAAAAAAYHJAAAAAAAAAc0AAAAAAAABzQAAAAAAAEHNAAAAAAAAwc0AAAAAAALBzQAAAAAAAAHNAAAAAAABQdUAAAAAAAEB3QAAAAAAA8HZAAAAAAAAAd0AAAAAAACB3QAAAAAAAUHVAAAAAAABgdUAAAAAAAIB1QAAAAAAAsHZAAAAAAADQdkAAAAAAAFB1QAAAAAAAYHVAAAAAAABgd0A=", "dtype": "f8" }, "xaxis": "x3", "y": { "bdata": "AAAAAAAAAAAAAAAAAADwPwAAAAAAABRAAAAAAAAAKEAAAAAAAAAoQAAAAAAAgEhAAAAAAACASEAAAAAAAIBeQAAAAAAAgEhAAAAAAAAASUAAAAAAAIBKQAAAAAAAAFdAAAAAAADAX0AAAAAAAMBfQAAAAAAAwGBAAAAAAADgYEAAAAAAAOBgQAAAAAAA4GBAAAAAAAAgYUAAAAAAAIBhQAAAAAAAoGFAAAAAAADgYUAAAAAAAABhQAAAAAAAYGFAAAAAAACgYkAAAAAAAKBiQAAAAAAAYGNAAAAAAADAY0AAAAAAAOBiQAAAAAAAIGNAAAAAAACAY0AAAAAAAMBiQAAAAAAAAGNAAAAAAAAAZEAAAAAAAABkQAAAAAAAAGRAAAAAAABAZEAAAAAAAKBkQAAAAAAAwGRAAAAAAAAAZUAAAAAAACBkQAAAAAAAgGRAAAAAAADAZUAAAAAAAMBlQAAAAAAAgGZAAAAAAADgZkAAAAAAAABmQAAAAAAAQGZAAAAAAACgZkAAAAAAAOBlQAAAAAAAIGZAAAAAAAAgZ0AAAAAAACBnQAAAAAAAIGdAAAAAAACAZ0AAAAAAAIBoQAAAAAAAYGdAAAAAAACAaUAAAAAAAIBpQAAAAAAA4GlAAAAAAAAgakAAAAAAAGBqQAAAAAAAgGlAAAAAAACgaUAAAAAAAOBpQAAAAAAAAGtAAAAAAABAa0AAAAAAAMBpQAAAAAAAAGpAAAAAAACAa0A=", "dtype": "f8" }, "yaxis": "y3" }, { "line": { "color": "red", "dash": "dash" }, "mode": "lines", "name": "Equal Start Time", "showlegend": false, "type": "scatter", "x": [ 0, 374 ], "xaxis": "x3", "y": [ 0, 374 ], "yaxis": "y3" }, { "hovertemplate": "Ratio: %{x:.2f}
Count: %{y}
", "marker": { "color": "purple", "opacity": 0.7 }, "name": "Duration Ratio Distribution", "nbinsx": 30, "type": "histogram", "x": { "bdata": "AAAAAAAA8D8AAAAAAADwPwAAAAAAAPA/+qRP+qRP2j8AAAAAAADwP0qf9Emf9Ok/AAAAAAAA8D8AAAAAAADwPwAAAAAAAPA/spCFLGQh2z8AAAAAAADwPwAAAAAAAPA/AAAAAAAA8D8nm2yyySbbPwAAAAAAAPA/AAAAAAAA8D8AAAAAAADwPwAAAAAAAPA/AAAAAAAA8D8AAAAAAADwPwAAAAAAAPA/AAAAAAAA8D8AAAAAAADwPwAAAAAAAPA/AAAAAAAA8D8AAAAAAADwPwAAAAAAAPA/AAAAAAAA8D8AAAAAAADwPyebbLLJJts/AAAAAAAA8D8AAAAAAADwPwAAAAAAAPA/AAAAAAAA8D8AAAAAAADwPwAAAAAAAPA/AAAAAAAA8D8AAAAAAADwPwAAAAAAAPA/AAAAAAAA8D8AAAAAAADwPwAAAAAAAPA/AAAAAAAA8D8AAAAAAADwPwAAAAAAAPA/6wZT5LNu4D8AAAAAAADwPwAAAAAAAPA/AAAAAAAA8D8AAAAAAADwPwAAAAAAAPA/AAAAAAAA8D8AAAAAAADwPwAAAAAAAPA/AAAAAAAA8D8AAAAAAADwPw3lNZTXUN4/AAAAAAAA8D8AAAAAAADwPwAAAAAAAPA/AAAAAAAA8D8AAAAAAADwPw==", "dtype": "f8" }, "xaxis": "x4", "yaxis": "y4" } ], "layout": { "annotations": [ { "font": { "size": 16 }, "showarrow": false, "text": "Duration Comparison (Fixed)", "x": 0.225, "xanchor": "center", "xref": "paper", "y": 1, "yanchor": "bottom", "yref": "paper" }, { "font": { "size": 16 }, "showarrow": false, "text": "Duration Differences (Fixed)", "x": 0.775, "xanchor": "center", "xref": "paper", "y": 1, "yanchor": "bottom", "yref": "paper" }, { "font": { "size": 16 }, "showarrow": false, "text": "Start Time Comparison (Fixed)", "x": 0.225, "xanchor": "center", "xref": "paper", "y": 0.375, "yanchor": "bottom", "yref": "paper" }, { "font": { "size": 16 }, "showarrow": false, "text": "Duration Ratio Distribution (Fixed)", "x": 0.775, "xanchor": "center", "xref": "paper", "y": 0.375, "yanchor": "bottom", "yref": "paper" } ], "height": 800, "shapes": [ { "line": { "color": "red", "dash": "dash" }, "type": "line", "x0": 1, "x1": 1, "xref": "x4", "y0": 0, "y1": 1, "yref": "y4 domain" } ], "showlegend": false, "template": { "data": { "bar": [ { "error_x": { "color": "#2a3f5f" }, "error_y": { "color": "#2a3f5f" }, "marker": { "line": { "color": "#E5ECF6", "width": 0.5 }, "pattern": { "fillmode": "overlay", "size": 10, "solidity": 0.2 } }, "type": "bar" } ], "barpolar": [ { "marker": { "line": { "color": "#E5ECF6", "width": 0.5 }, "pattern": { "fillmode": "overlay", "size": 10, "solidity": 0.2 } }, "type": "barpolar" } ], "carpet": [ { "aaxis": { "endlinecolor": "#2a3f5f", "gridcolor": "white", "linecolor": "white", "minorgridcolor": "white", "startlinecolor": "#2a3f5f" }, "baxis": { "endlinecolor": "#2a3f5f", "gridcolor": "white", "linecolor": "white", "minorgridcolor": "white", "startlinecolor": "#2a3f5f" }, "type": "carpet" } ], "choropleth": [ { "colorbar": { "outlinewidth": 0, "ticks": "" }, "type": "choropleth" } ], "contour": [ { "colorbar": { "outlinewidth": 0, "ticks": "" }, "colorscale": [ [ 0, "#0d0887" ], [ 0.1111111111111111, "#46039f" ], [ 0.2222222222222222, "#7201a8" ], [ 0.3333333333333333, "#9c179e" ], [ 0.4444444444444444, "#bd3786" ], [ 0.5555555555555556, "#d8576b" ], [ 0.6666666666666666, "#ed7953" ], [ 0.7777777777777778, "#fb9f3a" ], [ 0.8888888888888888, "#fdca26" ], [ 1, "#f0f921" ] ], "type": "contour" } ], "contourcarpet": [ { "colorbar": { "outlinewidth": 0, "ticks": "" }, "type": "contourcarpet" } ], "heatmap": [ { "colorbar": { "outlinewidth": 0, "ticks": "" }, "colorscale": [ [ 0, "#0d0887" ], [ 0.1111111111111111, "#46039f" ], [ 0.2222222222222222, "#7201a8" ], [ 0.3333333333333333, "#9c179e" ], [ 0.4444444444444444, "#bd3786" ], [ 0.5555555555555556, "#d8576b" ], [ 0.6666666666666666, "#ed7953" ], [ 0.7777777777777778, "#fb9f3a" ], [ 0.8888888888888888, "#fdca26" ], [ 1, "#f0f921" ] ], "type": "heatmap" } ], "histogram": [ { "marker": { "pattern": { "fillmode": "overlay", "size": 10, "solidity": 0.2 } }, "type": "histogram" } ], "histogram2d": [ { "colorbar": { "outlinewidth": 0, "ticks": "" }, "colorscale": [ [ 0, "#0d0887" ], [ 0.1111111111111111, "#46039f" ], [ 0.2222222222222222, "#7201a8" ], [ 0.3333333333333333, "#9c179e" ], [ 0.4444444444444444, "#bd3786" ], [ 0.5555555555555556, "#d8576b" ], [ 0.6666666666666666, "#ed7953" ], [ 0.7777777777777778, "#fb9f3a" ], [ 0.8888888888888888, "#fdca26" ], [ 1, "#f0f921" ] ], "type": "histogram2d" } ], "histogram2dcontour": [ { "colorbar": { "outlinewidth": 0, "ticks": "" }, "colorscale": [ [ 0, "#0d0887" ], [ 0.1111111111111111, "#46039f" ], [ 0.2222222222222222, "#7201a8" ], [ 0.3333333333333333, "#9c179e" ], [ 0.4444444444444444, "#bd3786" ], [ 0.5555555555555556, "#d8576b" ], [ 0.6666666666666666, "#ed7953" ], [ 0.7777777777777778, "#fb9f3a" ], [ 0.8888888888888888, "#fdca26" ], [ 1, "#f0f921" ] ], "type": "histogram2dcontour" } ], "mesh3d": [ { "colorbar": { "outlinewidth": 0, "ticks": "" }, "type": "mesh3d" } ], "parcoords": [ { "line": { "colorbar": { "outlinewidth": 0, "ticks": "" } }, "type": "parcoords" } ], "pie": [ { "automargin": true, "type": "pie" } ], "scatter": [ { "fillpattern": { "fillmode": "overlay", "size": 10, "solidity": 0.2 }, "type": "scatter" } ], "scatter3d": [ { "line": { "colorbar": { "outlinewidth": 0, "ticks": "" } }, "marker": { "colorbar": { "outlinewidth": 0, "ticks": "" } }, "type": "scatter3d" } ], "scattercarpet": [ { "marker": { "colorbar": { "outlinewidth": 0, "ticks": "" } }, "type": "scattercarpet" } ], "scattergeo": [ { "marker": { "colorbar": { "outlinewidth": 0, "ticks": "" } }, "type": "scattergeo" } ], "scattergl": [ { "marker": { "colorbar": { "outlinewidth": 0, "ticks": "" } }, "type": "scattergl" } ], "scattermap": [ { "marker": { "colorbar": { "outlinewidth": 0, "ticks": "" } }, "type": "scattermap" } ], "scattermapbox": [ { "marker": { "colorbar": { "outlinewidth": 0, "ticks": "" } }, "type": "scattermapbox" } ], "scatterpolar": [ { "marker": { "colorbar": { "outlinewidth": 0, "ticks": "" } }, "type": "scatterpolar" } ], "scatterpolargl": [ { "marker": { "colorbar": { "outlinewidth": 0, "ticks": "" } }, "type": "scatterpolargl" } ], "scatterternary": [ { "marker": { "colorbar": { "outlinewidth": 0, "ticks": "" } }, "type": "scatterternary" } ], "surface": [ { "colorbar": { "outlinewidth": 0, "ticks": "" }, "colorscale": [ [ 0, "#0d0887" ], [ 0.1111111111111111, "#46039f" ], [ 0.2222222222222222, "#7201a8" ], [ 0.3333333333333333, "#9c179e" ], [ 0.4444444444444444, "#bd3786" ], [ 0.5555555555555556, "#d8576b" ], [ 0.6666666666666666, "#ed7953" ], [ 0.7777777777777778, "#fb9f3a" ], [ 0.8888888888888888, "#fdca26" ], [ 1, "#f0f921" ] ], "type": "surface" } ], "table": [ { "cells": { "fill": { "color": "#EBF0F8" }, "line": { "color": "white" } }, "header": { "fill": { "color": "#C8D4E3" }, "line": { "color": "white" } }, "type": "table" } ] }, "layout": { "annotationdefaults": { "arrowcolor": "#2a3f5f", "arrowhead": 0, "arrowwidth": 1 }, "autotypenumbers": "strict", "coloraxis": { "colorbar": { "outlinewidth": 0, "ticks": "" } }, "colorscale": { "diverging": [ [ 0, "#8e0152" ], [ 0.1, "#c51b7d" ], [ 0.2, "#de77ae" ], [ 0.3, "#f1b6da" ], [ 0.4, "#fde0ef" ], [ 0.5, "#f7f7f7" ], [ 0.6, "#e6f5d0" ], [ 0.7, "#b8e186" ], [ 0.8, "#7fbc41" ], [ 0.9, "#4d9221" ], [ 1, "#276419" ] ], "sequential": [ [ 0, "#0d0887" ], [ 0.1111111111111111, "#46039f" ], [ 0.2222222222222222, "#7201a8" ], [ 0.3333333333333333, "#9c179e" ], [ 0.4444444444444444, "#bd3786" ], [ 0.5555555555555556, "#d8576b" ], [ 0.6666666666666666, "#ed7953" ], [ 0.7777777777777778, "#fb9f3a" ], [ 0.8888888888888888, "#fdca26" ], [ 1, "#f0f921" ] ], "sequentialminus": [ [ 0, "#0d0887" ], [ 0.1111111111111111, "#46039f" ], [ 0.2222222222222222, "#7201a8" ], [ 0.3333333333333333, "#9c179e" ], [ 0.4444444444444444, "#bd3786" ], [ 0.5555555555555556, "#d8576b" ], [ 0.6666666666666666, "#ed7953" ], [ 0.7777777777777778, "#fb9f3a" ], [ 0.8888888888888888, "#fdca26" ], [ 1, "#f0f921" ] ] }, "colorway": [ "#636efa", "#EF553B", "#00cc96", "#ab63fa", "#FFA15A", "#19d3f3", "#FF6692", "#B6E880", "#FF97FF", "#FECB52" ], "font": { "color": "#2a3f5f" }, "geo": { "bgcolor": "white", "lakecolor": "white", "landcolor": "#E5ECF6", "showlakes": true, "showland": true, "subunitcolor": "white" }, "hoverlabel": { "align": "left" }, "hovermode": "closest", "mapbox": { "style": "light" }, "paper_bgcolor": "white", "plot_bgcolor": "#E5ECF6", "polar": { "angularaxis": { "gridcolor": "white", "linecolor": "white", "ticks": "" }, "bgcolor": "#E5ECF6", "radialaxis": { "gridcolor": "white", "linecolor": "white", "ticks": "" } }, "scene": { "xaxis": { "backgroundcolor": "#E5ECF6", "gridcolor": "white", "gridwidth": 2, "linecolor": "white", "showbackground": true, "ticks": "", "zerolinecolor": "white" }, "yaxis": { "backgroundcolor": "#E5ECF6", "gridcolor": "white", "gridwidth": 2, "linecolor": "white", "showbackground": true, "ticks": "", "zerolinecolor": "white" }, "zaxis": { "backgroundcolor": "#E5ECF6", "gridcolor": "white", "gridwidth": 2, "linecolor": "white", "showbackground": true, "ticks": "", "zerolinecolor": "white" } }, "shapedefaults": { "line": { "color": "#2a3f5f" } }, "ternary": { "aaxis": { "gridcolor": "white", "linecolor": "white", "ticks": "" }, "baxis": { "gridcolor": "white", "linecolor": "white", "ticks": "" }, "bgcolor": "#E5ECF6", "caxis": { "gridcolor": "white", "linecolor": "white", "ticks": "" } }, "title": { "x": 0.05 }, "xaxis": { "automargin": true, "gridcolor": "white", "linecolor": "white", "ticks": "", "title": { "standoff": 15 }, "zerolinecolor": "white", "zerolinewidth": 2 }, "yaxis": { "automargin": true, "gridcolor": "white", "linecolor": "white", "ticks": "", "title": { "standoff": 15 }, "zerolinecolor": "white", "zerolinewidth": 2 } } }, "title": { "text": "Detailed Comparison Analysis (Fixed Data Types)" }, "xaxis": { "anchor": "y", "domain": [ 0, 0.45 ], "title": { "text": "Dataset 1 Duration" } }, "xaxis2": { "anchor": "y2", "domain": [ 0.55, 1 ], "title": { "text": "Task ID" } }, "xaxis3": { "anchor": "y3", "domain": [ 0, 0.45 ], "title": { "text": "Dataset 1 Start Time" } }, "xaxis4": { "anchor": "y4", "domain": [ 0.55, 1 ], "title": { "text": "Duration Ratio" } }, "yaxis": { "anchor": "x", "domain": [ 0.625, 1 ], "title": { "text": "Dataset 2 Duration" } }, "yaxis2": { "anchor": "x2", "domain": [ 0.625, 1 ], "title": { "text": "Duration Difference" } }, "yaxis3": { "anchor": "x3", "domain": [ 0, 0.375 ], "title": { "text": "Dataset 2 Start Time" } }, "yaxis4": { "anchor": "x4", "domain": [ 0, 0.375 ], "title": { "text": "Frequency" } } } } }, "metadata": {}, "output_type": "display_data" }, { "name": "stdout", "output_type": "stream", "text": [ "=== DISTRIBUTION ANALYSIS OF DIFFERENCES ===\n", "Duration Difference Statistics:\n", "count 70.000000\n", "mean -2.700000\n", "std 9.737645\n", "min -53.000000\n", "25% 0.000000\n", "50% 0.000000\n", "75% 0.000000\n", "max 0.000000\n", "Name: Duration_Diff, dtype: float64\n", "\n", "Task Distribution:\n", "Tasks with longer duration in simulation: 0\n", "Tasks with shorter duration in simulation: 7\n", "Tasks with identical duration: 63\n", "\n", "Duration Differences by Accelerator:\n", " mean std count\n", "Accelerator \n", "0 0.000000 0.000000 14\n", "1 -1.000000 4.242641 18\n", "2 -1.055556 4.478343 18\n", "3 -2.714286 7.181325 7\n", "4 -3.333333 5.773503 3\n", "6 -5.666667 9.814955 3\n", "7 -17.666667 30.599564 3\n", "10 -13.250000 26.500000 4\n" ] } ], "source": [ "def create_improved_difference_plots(comparison_df_fixed):\n", " \"\"\"Create improved plots with the fixed data\"\"\"\n", " \n", " fig = make_subplots(\n", " rows=2, cols=2,\n", " subplot_titles=('Duration Comparison (Fixed)', 'Duration Differences (Fixed)', \n", " 'Start Time Comparison (Fixed)', 'Duration Ratio Distribution (Fixed)'),\n", " specs=[[{\"secondary_y\": False}, {\"secondary_y\": False}],\n", " [{\"secondary_y\": False}, {\"secondary_y\": False}]]\n", " )\n", " \n", " # Duration comparison scatter plot\n", " fig.add_trace(\n", " go.Scatter(\n", " x=comparison_df_fixed['Duration_1'],\n", " y=comparison_df_fixed['Duration_2'],\n", " mode='markers',\n", " name='Duration Comparison',\n", " text=comparison_df_fixed['Task_ID'],\n", " hovertemplate='Task %{text}
' +\n", " 'Dataset 1: %{x:.1f}
' +\n", " 'Dataset 2: %{y:.1f}
' +\n", " 'Difference: %{customdata:.1f}
' +\n", " '',\n", " customdata=comparison_df_fixed['Duration_Diff'],\n", " marker=dict(size=8, color='blue', opacity=0.6)\n", " ),\n", " row=1, col=1\n", " )\n", " \n", " # Add diagonal line for reference\n", " max_duration = max(comparison_df_fixed['Duration_1'].max(), comparison_df_fixed['Duration_2'].max())\n", " fig.add_trace(\n", " go.Scatter(\n", " x=[0, max_duration],\n", " y=[0, max_duration],\n", " mode='lines',\n", " name='Equal Duration',\n", " line=dict(dash='dash', color='red'),\n", " showlegend=False\n", " ),\n", " row=1, col=1\n", " )\n", " \n", " # Duration differences bar chart\n", " # Color bars based on positive/negative differences\n", " bar_colors = ['green' if x > 0 else 'red' if x < 0 else 'gray' for x in comparison_df_fixed['Duration_Diff']]\n", " \n", " fig.add_trace(\n", " go.Bar(\n", " x=comparison_df_fixed['Task_ID'],\n", " y=comparison_df_fixed['Duration_Diff'],\n", " name='Duration Difference',\n", " marker=dict(color=bar_colors),\n", " hovertemplate='Task %{x}
' +\n", " 'Difference: %{y:.1f}
' +\n", " ''\n", " ),\n", " row=1, col=2\n", " )\n", " \n", " # Start time comparison\n", " fig.add_trace(\n", " go.Scatter(\n", " x=comparison_df_fixed['Start_1_Norm'],\n", " y=comparison_df_fixed['Start_2_Norm'],\n", " mode='markers',\n", " name='Start Time Comparison',\n", " text=comparison_df_fixed['Task_ID'],\n", " hovertemplate='Task %{text}
' +\n", " 'Dataset 1: %{x:.1f}
' +\n", " 'Dataset 2: %{y:.1f}
' +\n", " 'Difference: %{customdata:.1f}
' +\n", " '',\n", " customdata=comparison_df_fixed['Start_Diff_Norm'],\n", " marker=dict(size=8, color='orange', opacity=0.6)\n", " ),\n", " row=2, col=1\n", " )\n", " \n", " # Add diagonal line for start time reference\n", " max_start = max(comparison_df_fixed['Start_1_Norm'].max(), comparison_df_fixed['Start_2_Norm'].max())\n", " fig.add_trace(\n", " go.Scatter(\n", " x=[0, max_start],\n", " y=[0, max_start],\n", " mode='lines',\n", " name='Equal Start Time',\n", " line=dict(dash='dash', color='red'),\n", " showlegend=False\n", " ),\n", " row=2, col=1\n", " )\n", " \n", " # Duration ratio histogram (filter out infinite values)\n", " finite_ratios = comparison_df_fixed[comparison_df_fixed['Duration_Ratio'] != float('inf')]['Duration_Ratio']\n", " \n", " fig.add_trace(\n", " go.Histogram(\n", " x=finite_ratios,\n", " nbinsx=30,\n", " name='Duration Ratio Distribution',\n", " marker=dict(color='purple', opacity=0.7),\n", " hovertemplate='Ratio: %{x:.2f}
' +\n", " 'Count: %{y}
' +\n", " ''\n", " ),\n", " row=2, col=2\n", " )\n", " \n", " # Add vertical line at ratio = 1 for reference\n", " fig.add_vline(x=1, line_dash=\"dash\", line_color=\"red\", row=2, col=2)\n", " \n", " fig.update_layout(\n", " title=\"Detailed Comparison Analysis (Fixed Data Types)\",\n", " height=800,\n", " showlegend=False\n", " )\n", " \n", " fig.update_xaxes(title_text=\"Dataset 1 Duration\", row=1, col=1)\n", " fig.update_yaxes(title_text=\"Dataset 2 Duration\", row=1, col=1)\n", " fig.update_xaxes(title_text=\"Task ID\", row=1, col=2)\n", " fig.update_yaxes(title_text=\"Duration Difference\", row=1, col=2)\n", " fig.update_xaxes(title_text=\"Dataset 1 Start Time\", row=2, col=1)\n", " fig.update_yaxes(title_text=\"Dataset 2 Start Time\", row=2, col=1)\n", " fig.update_xaxes(title_text=\"Duration Ratio\", row=2, col=2)\n", " fig.update_yaxes(title_text=\"Frequency\", row=2, col=2)\n", " \n", " return fig\n", "\n", "def create_distribution_analysis():\n", " \"\"\"Analyze the distribution of differences\"\"\"\n", " \n", " print(\"=== DISTRIBUTION ANALYSIS OF DIFFERENCES ===\")\n", " \n", " # Basic statistics\n", " diff_stats = comparison_df_fixed['Duration_Diff'].describe()\n", " print(\"Duration Difference Statistics:\")\n", " print(diff_stats)\n", " \n", " # Count tasks in different categories\n", " positive_diff = len(comparison_df_fixed[comparison_df_fixed['Duration_Diff'] > 0])\n", " negative_diff = len(comparison_df_fixed[comparison_df_fixed['Duration_Diff'] < 0])\n", " zero_diff = len(comparison_df_fixed[comparison_df_fixed['Duration_Diff'] == 0])\n", " \n", " print(f\"\\nTask Distribution:\")\n", " print(f\"Tasks with longer duration in simulation: {positive_diff}\")\n", " print(f\"Tasks with shorter duration in simulation: {negative_diff}\")\n", " print(f\"Tasks with identical duration: {zero_diff}\")\n", " \n", " # Analyze by accelerator\n", " if 'Accelerator' in comparison_df_fixed.columns:\n", " print(f\"\\nDuration Differences by Accelerator:\")\n", " accel_analysis = comparison_df_fixed.groupby('Accelerator')['Duration_Diff'].agg(['mean', 'std', 'count'])\n", " print(accel_analysis)\n", " \n", " return diff_stats\n", "\n", "# Create improved visualizations\n", "improved_fig = create_improved_difference_plots(comparison_df_fixed)\n", "improved_fig.show()\n", "\n", "# Perform distribution analysis\n", "dist_stats = create_distribution_analysis()" ] } ], "metadata": { "kernelspec": { "display_name": "env", "language": "python", "name": "python3" }, "language_info": { "codemirror_mode": { "name": "ipython", "version": 3 }, "file_extension": ".py", "mimetype": "text/x-python", "name": "python", "nbconvert_exporter": "python", "pygments_lexer": "ipython3", "version": "3.10.12" } }, "nbformat": 4, "nbformat_minor": 5 }