1. 程式人生 > >Chart控制元件,chart、Series、ChartArea曲線圖繪製的重要屬性介紹

Chart控制元件,chart、Series、ChartArea曲線圖繪製的重要屬性介紹

先簡單說一下,從圖中可以看到一個chart可以繪製多個ChartArea,每個ChartArea都可以繪製多條Series。ChartArea就是就是繪圖區域,可以有多個ChartArea疊加在一起,series是畫在ChartAarea上的,Series英文意思是“序列、連續”,其實就是資料線,它可以是曲線、點、柱形、條形、餅圖...可以注意該chart當資料非常多的時候可以通過滑鼠選擇檢視區域,進一步拖拽橫縱向滾動條來縮小曲線圖檢視。

程式碼中的Chart控制元件的命名是chartData,資料來源是dt,由於chart屬性太多,不好一一解釋,所以請仔細看截圖,尤其重視本例用到的屬性

一、

資料來源:

 資料返回方式是DataSet.Tables[0],即DataTable,也是最基本的資料來源方式。這裡只介紹DataTable繫結資料來源,很簡單:

                chartData.DataSource = dt;
                chartData.DataBind();

二、Series:
    Series是畫在ChartArea上的線、點、柱形、條形、餅圖,簡單點兒說就是畫在上面的資料,直接說屬性,

 1. “標記”:就是資料點,某個資料值的點。如下圖所示:

    C# <wbr>Chart控制元件,chart、Series、ChartArea曲線圖繪製的重要屬性 

               MarkerBorderColor    資料點邊框的顏色

               MarkerBorderWidth    資料點邊框的寬度

               MarkColor            資料點的顏色
               MakerSize            資料點的大小,預設值為0資料點不存在,建議程式碼控制

               MarkerStep           資料點顯示的頻率

               MarkerStyle          資料點的樣式,可以是方塊、圓圈、三角、叉子....

 2. “標籤”:就是現在是在資料點旁邊資料值    

      C# <wbr>Chart控制元件,chart、Series、ChartArea曲線圖繪製的重要屬性 


            IsValueShownAsLabel                    資料值是否顯示,建議程式碼控制

            SmartLabelStyle                        資料值樣式

            SmartLabelStyle.Enabled                直接控制可用不可用,建議不可用

            SmartLabelStyle.AllowOutsidePloArea    資料值顯示是否允許在外面

            其他屬性自己試吧

注意:如果要使用SmartLabelStyle的話,所有的資料點的值都會自動找位置顯示出來,如果某一個區域資料點較多,就會直線指示;如果不用的話,資料點的值會在資料點旁邊顯示,不會有直線。如下圖所示也可以看到AllowOutsidePlotArea的區別:

C# <wbr>Chart控制元件,chart、Series、ChartArea曲線圖繪製的重要屬性
C# <wbr>Chart控制元件,chart、Series、ChartArea曲線圖繪製的重要屬性

3. “Font”:資料標籤上的字型和樣式

               C# <wbr>Chart控制元件,chart、Series、ChartArea曲線圖繪製的重要屬性       
                     Font                      標籤字型設定

                     Font.Unit                 個人設定此值為Document,自己體會                      LabelAngle                標籤角度,斜多少度,建議就正著                      LabelBackColor            標籤背景顏色                      LabelBorderColor          標籤邊框顏色                      LabelBorderDahStyle       標籤邊框樣式                      LabelBorderWidth          標籤邊框寬度                      LabelForeColor            標籤字型顏色                      其他屬性自己試                  C# <wbr>Chart控制元件,chart、Series、ChartArea曲線圖繪製的重要屬性 C# <wbr>Chart控制元件,chart、Series、ChartArea曲線圖繪製的重要屬性      
        真好看C# <wbr>Chart控制元件,chart、Series、ChartArea曲線圖繪製的重要屬性資料多的時候本來顯示就亂拉,這樣更是畫蛇添足,建議透明,正常點的顏色就好

3. 空白點:就是連續的資料,譬如X軸對應Y軸沒資料,或Y軸對應X軸沒資料,這樣的資料點可以對其設定相應的屬性,屬性大多都是上面說過的,自己試一下即可
C# <wbr>Chart控制元件,chart、Series、ChartArea曲線圖繪製的重要屬性 


4. 資料:其實就是就是serie的名字和值型別

               C# <wbr>Chart控制元件,chart、Series、ChartArea曲線圖繪製的重要屬性  
                           Name                  就是唯一的名字

                           XvalueType            X軸值型別

                           YValuesPerPoint       資料點的Y值數目

                           YValueType            Y軸值型別

                           其他屬性自己試

    預設不用設定就好,主要是X軸和Y軸值型別設定的是Auto,也就是根據X軸上的值和Y軸上的值的型別自動匹配,當然手動設定的話不設錯就行了。


5. 資料來源:注意這裡是Series的資料來源

            C# <wbr>Chart控制元件,chart、Series、ChartArea曲線圖繪製的重要屬性 

    注意:
    第一,這兩個屬性對應的是DataTable的兩個列,也就是一般的X軸對應時間,Y軸對應資料值,但是也要注意對DataTable的每個資料單元的值做判斷,尤其是DBNull或空。我這裡的資料庫的NewDateTime列資料型別是DateTime型別,NewFyj是Double型別。

    第二,Series的資料來源和Chart控制元件的資料來源有區別,只有DataTable先綁定了Chart,Series才對應到列,否則無法對應。

第三,假如使用者需要先檢視所有資料,然後取消某幾條進行資料對比,但是不需要重新查詢資料,推薦賦值string.Empty實現,如下圖:

                     C# <wbr>Chart控制元件,chart、Series、ChartArea曲線圖繪製的重要屬性 

6. 圖表:也就是Serie畫在哪個ChartArea上,ChartType是Serie的圖表型別,也就是畫何種圖,曲線圖、直線圖、點、柱狀圖、餅圖等...

                  C# <wbr>Chart控制元件,chart、Series、ChartArea曲線圖繪製的重要屬性

7. 圖例:也就是每個Serie的名字和樣式,只要建立Serie就會自動產生載入在Legend裡,裡面的屬性可以試一下,如果想調整Legend的位置,可以去Legend集合裡設定,比較簡單,這裡不多說

C# <wbr>Chart控制元件,chart、Series、ChartArea曲線圖繪製的重要屬性 

8. 圖表

C# <wbr>Chart控制元件,chart、Series、ChartArea曲線圖繪製的重要屬性 


9. 對映區:滑鼠放在資料點上出現的小提示,建議用程式碼控制

                      C# <wbr>Chart控制元件,chart、Series、ChartArea曲線圖繪製的重要屬性

C# <wbr>Chart控制元件,chart、Series、ChartArea曲線圖繪製的重要屬性 

10. 雜項

               C# <wbr>Chart控制元件,chart、Series、ChartArea曲線圖繪製的重要屬性 
                          EmptyPointValue          空資料點的值做平均還是做零處理

                          LabelStyle               對標籤硬性的規定顯示在資料點旁的哪個位置

11. 軸:也就是X軸和Y軸,X軸有主軸和副軸,Y軸也有主軸和副軸,主軸為Primary,副軸為Secondary。X主軸在下方,Y主軸在右方,X副軸在上方,Y副軸在右方。

C# <wbr>Chart控制元件,chart、Series、ChartArea曲線圖繪製的重要屬性  

三、ChartAreas:
 Chart控制元件裡最重要的,每個Serie都畫在ChartArea上,Chart控制元件可以有多個ChartArea疊加在一起顯示。比如第一個ChartArea繪製的是曲線,第二個畫的柱狀圖或者是什麼什麼,這也是上面說過的Serie的ChartType,我們也可以把多個Serie畫在一個ChartArea上,但是如果有一個列資料單位範圍在500~10000之間的資料浮動最大,有一列資料單位範圍在0.1~2.0之間,有一列資料單位範圍在50~100之間,那畫在同一個ChartArea上顯示的話,0.1到2.0的資料會變成一條直線。當只有1、2條這樣的資料時,可以在Serie中設定主軸和副軸,但當出現多條資料,多種型別的顯示,就需要多個ChartArea來解決了。由於屬性太多了,撿重點屬性介紹,其他的屬性自己試一下


1. 對齊:ChartArea對齊方式

                   C# <wbr>Chart控制元件,chart、Series、ChartArea曲線圖繪製的重要屬性 
                    AlignmentOrientation            水平對齊、垂直對齊、全部對齊

                    AlignmentStyle                  根據哪種方式對齊

                    AlignmentWithChartArea          和哪個對齊

     老實說,沒啥用,可以設定Position,一會兒在外觀裡會說到


2. 三維:自己試試,效果很沉重,不是很好

                            C# <wbr>Chart控制元件,chart、Series、ChartArea曲線圖繪製的重要屬性

3. 外觀:可以對ChartArea顏色、邊框、位置的設定

                 C# <wbr>Chart控制元件,chart、Series、ChartArea曲線圖繪製的重要屬性

                        BackColor                       ChartArea的背景顏色

                        BackGradientStyle               背景顏色的漸變方式

                        BackHatchStyle                  背景陰影

                        BackImage                       背景圖片

                        BackImageAlignment              圖片顯示位置

                        BackImageTransparentColor       繪製圖像時顯示的顏色

                        BackImageWrapMode               包裝模式  
                        BackSecondaryColor              ChartArea的第二背景顏色,搭配漸變用的

                        BorderColor                     邊框顏色

                        BorderDashStyle                 邊框線的樣式

                        BorderWidth                     邊框寬度

                        ShadowColor                     整個圖示的背影顏色

                        ShadowOffset                    背影偏移量

注意:

    第一,InnerPlotPosition和Position一個是大的,一個是內部繪製的,試一下就明白了,這裡最重要的是多個ChartArea重疊在一起的時候,兩個Position一定要設定相同,否則就重疊不上了。

    第二,多個ChartArea重疊在一起的時候,顏色或圖片只能在疊在最底下的ChartArea來設定,上面的ChartArea都設定為透明即可,最底下的ChartArea是ChartAreas[0],所以不要設定錯。

4. 遊標:CursorX和CursorY,就是橫向和縱向滾動條

             C# <wbr>Chart控制元件,chart、Series、ChartArea曲線圖繪製的重要屬性
                       CursorX.AutoScroll                  滾動條自動滾動

                       CursorX.AxisType                    遊標作用在主軸還是副軸

                       CursorX.Interval                    遊標偏移的間隔

                       CursorX.IntervalOffset              遊標間隔偏移量

                       CursorX.IntervalOffsetType          遊標間隔的單位,建議Auto
                       CursorX.Type                        遊標間隔偏移量的單位,建議Auto

                       CursorX.IsUserEnabled               啟用遊標

                       CursorX.IsUserSelectedEnabled       啟用遊標選擇區域

                       CursorX.LineColor                   遊標線顏色

                       CursorX.LineDashStyle               遊標線樣式

                       CursorX.LineWidth                   遊標線的寬度

                       CursorX.SelectionColor              遊標選擇區域的顏色

                       CursorY相同,其他屬性自己試

    首先強調一下,只要想選擇區域細看曲線圖,就一定要啟用遊標,遊標的設定只能在疊加在最上面的ChartArea進行設定,也就是ChartArea[ChartArea.Count-1],。列了這麼多屬性看一下圖更直觀:

C# <wbr>Chart控制元件,chart、Series、ChartArea曲線圖繪製的重要屬性

X軸和Y軸上有遊標,可以拖動,可以注意看有個按鈕上面有個圓圈,就是向後退,圖中的藍色矩形方塊就是使用者選擇的區域,鬆開滑鼠就會變成該區域的圖形。

5. 雜項:Name,沒啥好說的

                       C# <wbr>Chart控制元件,chart、Series、ChartArea曲線圖繪製的重要屬性 


6. 軸Axes!!:非常重要,一個ChartArea有4個軸:主軸X axis、主軸Y(Value)axis、副軸X axis、副軸Y(Value)axis,每個軸屬性均相同,只說一個一個軸

                 C# <wbr>Chart控制元件,chart、Series、ChartArea曲線圖繪製的重要屬性 
                        IsLabelAutoFit                  軸上的標籤自動調整

                        LabelAutoFitMaxFontSize         軸上標籤自適應字型大號
                        LabelAutoFitMaxFontSize         軸上標籤自適應字型小號

                        LabelStyle.Angle                標籤顯示角度

                        LabelStyle.IsEndLabelVisible    最後一個標籤是否顯示     

                        其他屬性自己試

    我的Interval這裡設定都是NotSet,沒有設定Auto,為什麼,自己試就明白了

                  C# <wbr>Chart控制元件,chart、Series、ChartArea曲線圖繪製的重要屬性 
                        TextOrientation             軸的標題方向

                        Title                       軸的名字,X軸是時間軸,Title就是時間

                        其他屬性自己試,簡單


                  C# <wbr>Chart控制元件,chart、Series、ChartArea曲線圖繪製的重要屬性 
                       IntervalAutoMode             間隔是固定值還是隨著軸變化,自己試

                     C# <wbr>Chart控制元件,chart、Series、ChartArea曲線圖繪製的重要屬性 
                      ScaleView                      資料檢視,就是當前繪製展開的圖!重要!
                      MinSizeType                    遊標滾動型別

                      ScrollBar                      滾動條

 ScaleView是資料檢視,也就是當前繪製出圖表的一個區域,如果用滑鼠選擇某個區域展開顯示,新展開的就又是一個ScaleView,只把它想成當前顯示的檢視就好理解了。

    ScrollBar就是遊標,之前我們說的ChartArea.CursorX或Y是也是遊標,這裡的ScrollBar是滾動條,仔細看兩者的屬性不難發現,一個是選擇區域,一個是拖拽滾動條檢視所有資料。

C# <wbr>Chart控制元件,chart、Series、ChartArea曲線圖繪製的重要屬性

C# <wbr>Chart控制元件,chart、Series、ChartArea曲線圖繪製的重要屬性 
                       這些屬性都不是重點,自己試試吧,就是外觀設計

           C# <wbr>Chart控制元件,chart、Series、ChartArea曲線圖繪製的重要屬性

不多說了,需要網格的在這裡設定就行,感覺設定完了很醜,不過各花入個眼,如下圖,還不錯哈

C# <wbr>Chart控制元件,chart、Series、ChartArea曲線圖繪製的重要屬性

             C# <wbr>Chart控制元件,chart、Series、ChartArea曲線圖繪製的重要屬性

                                          簡單不說
       別忘了,咱們還停留在ChartArea.Axis裡呢,這僅是一個軸,有需要的別忘了設定其他的軸哦C# <wbr>Chart控制元件,chart、Series、ChartArea曲線圖繪製的重要屬性

C# <wbr>Chart控制元件,chart、Series、ChartArea曲線圖繪製的重要屬性

相關推薦

Chart控制元件chartSeriesChartArea曲線圖繪製重要屬性介紹

先簡單說一下,從圖中可以看到一個chart可以繪製多個ChartArea,每個ChartArea都可以繪製多條Series。ChartArea就是就是繪圖區域,可以有多個ChartArea疊加在一起,series是畫在ChartAarea上的,Series英文意思是“序列

C# Chart控制元件chartSeriesChartArea曲線圖繪製重要屬性

迴圈設定  chart1.Series[0].Points[i].ToolTip =  “” ;   可以通過 i 定位到 Dt中的資料直接設定 chart1.Series[0].ToolTip =""; 只能設定Xy軸的值。8個月沒寫部落格了- -,一來是有不想繼續幹開發的

一個Android文字輪播控制元件實現了可垂直跑可水平跑的跑馬燈

Android文字輪播控制元件 現在的絕大數APP特別是類似淘寶京東等這些大型APP都有文字輪播介面,實現迴圈輪播多個廣告詞等功能;這種控制元件俗稱“跑馬燈”,而TextBannerView已經實現了可垂直跑、可水平跑的跑馬燈了。 效果圖 Attribute

[Swift通天遁地]二表格表單-(4)使用系統自帶的下拉重新整理控制元件製作表格的下拉重新整理效果

本文將演示如何使用系統自帶的下拉重新整理控制元件,製作表格的下拉重新整理效果。 在專案導航區,開啟檢視控制器的程式碼檔案【ViewController.swift】 現在開始編寫程式碼,實現表格的下拉重新整理功能。 1 import UIKit 2 3 //使當前的檢視控制器類,遵循表

獲取iframe中的內容查詢獲取指定元素(關於用c++呼叫WEBBROWSER控制元件使用相關介面操作web頁面元素的一些方法)

最近開發WINDOWS下的應用程式,需要用到C++中呼叫WEBBROWSER控制元件操作網頁的相關技術,查閱了一下相關文件,反覆除錯了幾天,對其中的技術有了一些膚淺的認識,大多數C++程式設計師對COM應該不陌生,其實用C++操作網頁,在前端應用層上主要就是對COM介面的查

C#應用WindowsApi實現查詢\列舉(FindWindowEnumChildWindows)窗體控制元件併發送訊息。

轉載:http://www.cnblogs.com/hehexiaoxia/p/4223927.html 首先介紹基本WindowsApi: public static extern IntPtr FindWindow(string lpClassName, strin

ListviewRecyclerView中的item中包含可以點選的控制元件點選衝突解決辦法

在item的根佈局中新增: android:descendantFocusability="blocksDescendants" 可點選的子item新增 android:focusable="f

WinForm Chart控制元件使用記錄(由於製作餅裝柱狀折線圖)

由於公司的winform專案需要用到Chart圖表,抽空研究了一下,特地發上來給大家做個參考,就目前而言用到的屬性說明都做了註釋; 主要用到Chart控制元件圖表區域的屬性有五個屬性 Annotations 批註集合(我沒怎麼用到,但是配置的話會在圖示區域出

c#中chart控制元件如何新增輔助的警示線啊(參考線)

public class Main { public static void main(String[] args) { Scanner sc = new Scanner(System.in); String[] st = sc.nextLine().split("

MFC學習筆記(一)High Speed Chart 控制元件使用

引言 大學期間學習STM32時,由於參加機器人比賽,第一次接觸到攝像頭,讓我深深被其吸引,還記得當初為了點亮第一顆攝像頭,第一次通過自己寫的顏色識別演算法讓它按照自己的意願去識別出每幀影象的內容,正確標識出物體位置資訊時的激動,那時的我們真的是廢寢忘食般的吸收大量新知識,連續通宵好幾晚,

C#chart控制元件的應用

本人正在寫一個“鋰離子成分容上位機軟體“”,裡面需要用到chart控制元件,需要讀取老師提供的一個檔案,並將檔案中的資料在chart控制元件中通過曲線圖的形式顯示出來,請問需要怎麼解決呢? private void 開啟ToolStripMenuItem_Click(object sender,

ASP.net[2.0示例]實現折線,柱狀,扇形圖--web chart控制元件

 推薦連結:輕鬆註冊,推薦一個網站獲得20元網路賬本 —免費的網路記帳本,今天你記賬了嗎?倍新諮詢—投資諮詢專家線上炒外匯—免費訂閱外匯月刊學不好英語,不是你的錯。因為學習內容太枯燥乏味! 為什麼不試試《看電影學英語》?

select控制元件樣式(相容IE6IE7Firefox 2.0)

.select * {   margin: 0;   padding: 0; } .select {   border:1px solid #c5c5c5;   border-bottom: 1px solid #d9d9d9;   float: left;   height:25px;   display:

ASP.Net MVC中使用Chart 控制元件詳解

在 .NET 3.5 的時候,微軟就提供了一個 Chart 控制元件,網路上有大量的關於在 VS2008 中使用這個控制元件的文章,在 VS2010 中,這個控制元件已經被整合到 ASP.NET 4.0 中,可以從工具箱中直接使用了。 這個控制元件在 ASP.NET 經典的頁面中很容易使用,但是在

Android控制元件RecyclerView實現橫向滑動瀑布流。

在開發的過程中,我們經常使用ListView控制元件,但是ListView也有它的缺點,就是它不能夠左右滑動資料,執行效率不高; 所以我們可以使用更強大的控制元件RecyclerView,可以說它是一個增強版的ListView,Google推薦使用,那就簡單的

chart 控制元件的各種資料繫結(…

一.資料來源      說到繪製圖表,可能很多人的第一反應除了是圖表呈現的方式外,更關心的便是資料如何新增,記得在很多年前,哪時要繪製一個數據曲線圖,一直找不到好的呈現方式,後來使用了SVG的繪圖模式,不過在新增資料的時候可謂吃盡了苦頭,畢竟,SVG只是一種描述語言,要動態的實現一個圖表的繪製,是非常困難的.

Android+HTML 針對android一個控制元件TextView中文字顏色大小不同的解決方案

tvPrice.setText((Html.fromHtml("<font color= '#FF0000'>"+"¥" + "<big>"+"示例文字"+"</big&

修改Delphi 10.1.2 edit控制元件在android的複製剪下和貼上樣式

Delphi 10.1.2 edit控制元件在android預設的複製、剪下和貼上樣式太醜,經悟能-DelphiTeacher的提示,用最簡單的程式碼修改後稍有改觀。 預設的樣式: 修改後的樣式: 修改FMX.Platform.Android.pas 找到procedure TWindowMa

時間控制元件:my97DatePicker選擇年季度

一直以來,用的最多的就是my97DatePicker獲得年月日的方法,今天突然逛到了這篇文章,留下來,以備以後使用 自己寫的一個:獲取年月,並從下個月開始計算 [html] view plain copy print?<asp:TextBoxID=“txt_date_1”runat=“serv

C#用serialPort和chart控制元件實現簡單波形繪製

先看最終的效果圖: 主要實現功能是將串列埠傳送過來的資料按波形顯示 注:本例是以串列埠除錯助手和虛擬串列埠VSPD軟體模擬串列埠傳送資料的,詳細說明見下文 說明: serialPort的ReadByte()方法用於從System.IO.Ports.SerialPort輸入