1. 程式人生 > >【Visual Studio 擴充套件工具】使用 ComponentOne迷你圖控制元件,進行視覺化資料趨勢分析

【Visual Studio 擴充套件工具】使用 ComponentOne迷你圖控制元件,進行視覺化資料趨勢分析

  概述
  
  迷你圖 —— Sparklines是迷你的輕量級圖表,有助於快速視覺化資料。 它們是由資料視覺化傳奇人物Edward Tufte發明的,他將其描述為“資料密集,設計簡單,位元組大小的圖形。”雖然迷你圖不包含傳統圖表中的許多元素(如軸和座標), 基於它們的簡單性,它們可以比其他圖表型別更具資訊性。 由於其緊湊的尺寸,迷你圖可以輕鬆嵌入資料網格或儀表板中,以顯示一系列價值觀的趨勢,例如銷售資料、天氣或股票市場。
  
  Sparklines in FlexGrid
  
  將迷你圖用於資料網格是很常見的,因為它們為表格資料添加了豐富的視覺化功能,而不會佔用太多空間。 隨著ComponentOne 2018 v3的到來,FlexGrid控制元件提供了在網格列中顯示迷你圖的功能。 讓我們通過一個非常常見的用例來理解這個功能 —— 分析特定月份不同公司的股票趨勢。
  
  使用迷你圖視覺化分析股市趨勢
  
  迷你圖提供即時趨勢資訊。 這正是股市分析師所需要的 —— 即時趨勢的金融資料。
  
  Sparklines
  
  在上面的示例中,該網格資料顯示了2018年10月份不同公司的股票資訊,包含最近一週的交易量(過去7天的交易量)、前一週交易量(前7天的交易量)、超過一週的交易量(原始和百分比)以及整個月的交易量趨勢。
  
  現在,我們來看看如何在FlexGrid中實現它。
  
  建立迷你圖表
  
  繫結到資料來源
  
  將FlexGrid繫結到包含表示數字集合的欄位的資料來源。 例如,實現IEnumerable或INotifyCollectionChanged介面的欄位,如Array,List或ObservableCollection。
  
  我們將網格繫結到一個包含以下內容的資料來源:有關最新周交易量、前一週交易量、兩者之間的變化和百分比變化的資訊,以及10月份不同公司的交易量數字集合。
  
  一旦綁定了資料網格,就可以深入探索我們需要使用的屬性,以便在FlexGrid中顯示迷你圖。
  
  使用ShowSparkline和Sparkline屬性
  
  引入了Column類的ShowSparkline和Sparkline屬性,以便在集合所代表的資料的相應單元格中顯示迷你圖。 因此,為了視覺化一個月交易量的趨勢,只需將列的ShowSparkline屬性設定為true,如圖所示。
  
  Column volumeTrendCol = c1FlexGrid1.Cols["VolumeValues"];
  
  volumeTrendCol.Caption = "Volume www.tiaotiaoylzc.com/ Trend Last 31 days\n as of 31-10-2018";
  
  //Set the Column's ShowSparkline property to true to show sparklines www.huayi1.cn in that column
  
  volumeTrendCol.ShowSparkline = true;
  
  您可以選擇三種不同型別的迷你圖,即Column,Line和WinLoss,以便在不同的上下文中視覺化資料。
  
  線條迷你圖、列迷你圖和WinLoss迷你圖
  
  例如,線條迷你圖適用於視覺化連續資料,例如銷售資料。 列迷你圖用於涉及資料比較的場景,例如,比較特定年份的月利潤。同樣,WinLoss迷你圖最好用於視覺化真假判斷(即取得勝利)場景,例如,跟蹤體育賽季。
  
  在這裡,由於我們有連續資料(一個月的交易量),因此我們將使用線型迷你線。 為了設定sparkline型別,您需要使用Column類的Sparkline屬性檢索Sparkline物件。
  
  然後,將檢索到的物件的SparklineType屬性設定為SparklineType.Line。 您還可以使用標記突出顯示迷你圖上的各個資料點,以使其更具可讀性。 例如,要突出顯示迷你圖中的最高和最低交易量值,請將Sparkline類的ShowHigh和ShowLow屬性設定為true,如下所示:
  
  //Sets the type of Sparkline
  
  volumeTrendCol.Sparkline.SparklineType yongshiyule178.com= SparklineType.Line;
  
  //Highlight the highest www.tongqt178.com and the lowest data points
  
  volumeTrendCol.Sparkline.www.weilaiyule178.com ShowHigh = true;
  
  volumeTrendCol.Sparkline.www.gcyl152.com ShowLow = true;
  
  您還可以使用不同的樣式選項更改迷你圖的外觀。
  
  Sparklines的樣式
  
  FlexGrid控制元件的名稱空間[C1.Win.C1FlexGrid]提供了一個名為SparklineStyles的類,它可以自定義Sparkline的外觀,例如軸的顏色、資料點的顏色、迷你圖主題顏色等。 此外,還可以更改迷你圖軸距、不同系列圖距、 winloss迷你圖中兩條線之間的距離,以及迷你圖中線條的粗細。
  
  點選此處,下載示例Demo,您可以親自嘗試一下 ComponentOne 迷你圖。
  
  ComponentOne Enterprise | 下載試用
  
  ComponentOne是一款專注於企業應用高效能開發的 .NET 全功能控制元件套包,包含300餘種控制元件,支援7大平臺,涵蓋7大功能模組。較於市面上其他同類產品,ComponentOne更加輕盈,功能更加強大,20多年的開發經驗,將為您的應用系統帶來更為安全的使用體驗。純中文操作介面,一對一技術支援,廠商級的技術服務,共同造就了這款國際頂級控制元件套包。
  
  您對ComponentOne 產品的任何技術問題,都有技術支援工程師提供1對1專業解答,點選此處即可發帖提問>> 技術支援論壇