/// <summary> /// /// </summary> /// <param name="column"></param> /// <param name="converter"></param> /// <param name="fieldValue"></param> /// <param name="innerException"></param> public TextDataFormatException(TextDataColumn column, ITextDataConverter converter, string fieldValue, Exception innerException) : base(null, innerException) { Column = column; Converter = converter; Fieldvalue = fieldValue; Message = $"Conversion ({converter}) of string value '{fieldValue}' to type {column.DataType} failed. "; }
/// <summary> /// /// </summary> /// <param name="column"></param> /// <returns></returns> public object this[TextDataColumn column] { get { var index = Columns.IndexOf(column, true); return(ItemArray[index]); } set { var index = Columns.IndexOf(column, true); var convertedValue = _convert(value, column); ItemArray[index] = convertedValue; } }
private void UpdateDiagram() { barchart.Size = size; List <string> days = new List <string>() { "Monday", "Tuesday", "Wednesday", "Thursday", "Friday" }; List <string> months = new List <string>() { "January", "February", "March", "April" }; DataSet dataSet = new DataSet(); List <string> xValues = new List <string>(); List <float> yValues = new List <float>(); List <string> zValues = new List <string>(); List <Color> colors = new List <Color>(); for (int i = 0; i < days.Count; i++) { for (int j = 0; j < months.Count; j++) { xValues.Add(days[i]); zValues.Add(months[j]); yValues.Add(Random.Range(0, 11)); colors.Add(Random.ColorHSV()); } } TextDataColumn xColumn = new TextDataColumn(xValues); NumericDataColumn yColumn = new NumericDataColumn(yValues); TextDataColumn zColumn = new TextDataColumn(zValues); dataSet.DataColumns.Add(xColumn); dataSet.DataColumns.Add(yColumn); dataSet.DataColumns.Add(zColumn); dataSet.DataPointColors = colors; barchart.DataSet = dataSet; barchart.UpdateDiagram(); }
/// <summary> /// Converts punch card data from GitHub to a generic data set which can be inserted into diagrams /// </summary> /// <returns>The async task which returns the data set containing the GitHub punch card data</returns> private async Task <DataSet> GitHubPunchCardToDataSet() { ApiResult <PunchCardEntry[]> res = await GitHub.GetGitHubPunchCard(Owner, Repository); if (res.HasError) { return(null); } DataSet dataset = new DataSet(); List <string> weekDayAxis = new List <string>(); List <float> hourAxis = new List <float>(); List <float> amountAxis = new List <float>(); List <Color> colors = new List <Color>(); for (int i = 0; i < res.Value.Length; i++) { weekDayAxis.Add(res.Value[i].DayOfWeek.ToString()); hourAxis.Add(res.Value[i].hour); amountAxis.Add(res.Value[i].numberOfCommits); colors.Add(UnityEngine.Random.ColorHSV()); } TextDataColumn weekDayColumn = new TextDataColumn(weekDayAxis); weekDayColumn.Title = "Weekday"; dataset.DataColumns.Add(weekDayColumn); NumericDataColumn amountColumn = new NumericDataColumn(amountAxis); amountColumn.Title = "Commits"; dataset.DataColumns.Add(amountColumn); NumericDataColumn hourColumn = new NumericDataColumn(hourAxis); hourColumn.Title = "Hour"; dataset.DataColumns.Add(hourColumn); dataset.DataPointColors = colors; return(dataset); }