private void GraphTripPurpose(Distribution.DistributionInformation[] distributionData) { TashaHousehold Household = new TashaHousehold(); TashaPerson person = new TashaPerson(); List <int> primaryWork = new List <int>(); person.Licence = false; person.Male = GenderLocal; SchedulerHousehold.CreateHouseholdProjects(Household); SchedulerPerson.InitializePersonalProjects(person); SchedulerPerson.GenerateWorkSchoolSchedule(person, null); SchedulerTripChain.GetTripChain(person); var trip = SchedulerTrip.GetTrip(0); Occupation[] Occupations = { Occupation.Professional, Occupation.Manufacturing, Occupation.Retail, Occupation.Office, Occupation.Unknown, Occupation.NotEmployed }; LoadDistributioNumbers(person, primaryWork, Occupations); float[] data = new float[this.StartTimeQuantums]; foreach (int ID in primaryWork) { var table = distributionData[ID].StartTimeFrequency; for (int i = 0; i < this.StartTimeQuantums; i++) { for (int j = 0; j < this.MaxFrequencyLocal; j++) { data[i] += table[i][j]; } } } // Make all data in terms of percentages of total. float sum = data.Sum(); for (int number = 0; number < data.Length; number++) { data[number] = data[number] / sum * 100; Writer.WriteLine("{0}, {1}", (Time.FromMinutes((60 * 4) + number * (1440 / this.StartTimeQuantums))), data[number]); } GenerateChart(String.Format("OfficeDur.png"), data, "Time of Day", "Probability"); }