最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

C#?Chart控件標(biāo)記問題詳解

 更新時間:2022年08月18日 08:28:03   作者:IC00  
這篇文章主要介紹了C#?Chart控件標(biāo)記問題詳解,在做項(xiàng)目的時候,遇到一個需求,需要我對Chart圖標(biāo)標(biāo)記數(shù)據(jù)正在運(yùn)行,實(shí)現(xiàn)數(shù)據(jù)可視化,文章通過圍繞主題展開詳情,需要的朋友可以參考一下

前言

在做項(xiàng)目的時候,遇到一個需求,需要我對Chart圖標(biāo)標(biāo)記數(shù)據(jù)正在運(yùn)行,實(shí)現(xiàn)數(shù)據(jù)可視化,因?yàn)槲覀兊谋砀袷请[藏Y軸的刻度是看不到數(shù)據(jù)值的,于是采用數(shù)據(jù)標(biāo)記的形式來動態(tài)展示值,那么我們應(yīng)該怎么去處理這個問題呢,閱讀這篇文章吧,我們一起學(xué)習(xí)學(xué)習(xí)一下,創(chuàng)作不易,大家點(diǎn)贊關(guān)注評論收藏,你的點(diǎn)贊和關(guān)注是我創(chuàng)作的動力,也是我持續(xù)不斷學(xué)習(xí)的動力。謝謝大家啦?。。?/p>

效果展示

先來展示一下我們的效果,看看是怎么回事,在看看有沒有欲望往下面看看文章,主要是對Chart圖的標(biāo)記問題做了處理,我們使用了Chart控件的一個對Point點(diǎn)的設(shè)置實(shí)現(xiàn)這種動態(tài)展示Chart圖的標(biāo)記,兩張圖的效果對比非常明顯,對于我們 有這樣的需求的項(xiàng)目可以采用這樣的形式,或者采用另一種的鼠標(biāo)點(diǎn)擊彈出提示,下篇文章應(yīng)該會寫出來和大家一起學(xué)習(xí)一下,大家多點(diǎn)贊,我創(chuàng)作的動力更強(qiáng)。

解決方法

我們來看一下解決的方法,我使用Chart控件里面對Point的MarkerStyle 進(jìn)行標(biāo)記,實(shí)現(xiàn)這樣的方式,對MarkerStyle 的樣式設(shè)置標(biāo)記大小,標(biāo)記顏色,以及標(biāo)記展示的值,使用的是隨機(jī)函數(shù)產(chǎn)生的數(shù)據(jù),生成的表格,對表格的數(shù)據(jù)添加,然后在對這個點(diǎn)進(jìn)行標(biāo)記,只標(biāo)記最新是使用標(biāo)一個去一個的方式,就是我把最新的標(biāo)記好,把上一個去掉標(biāo)記,哪個按鈕我只給了一個狀態(tài)值讓它去判斷是最新還是一直標(biāo)記,也可以加個狀態(tài)不標(biāo)記。后面貼了代碼你們可以后期自己二次更新。

using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Windows.Forms;
using System.Windows.Forms.DataVisualization.Charting;

namespace TestIC00
{
    public partial class Form2 : Form
    {
        public Form2()
        {
            InitializeComponent();
        }

        private void Form2_Load(object sender, EventArgs e)
        {

        }
        public int index = 0;
        public bool flag = false;
        private void button1_Click(object sender, EventArgs e)
        {
            timer1.Enabled = !timer1.Enabled;//對定時器的操作,點(diǎn)擊打開或關(guān)閉定時器,主要是實(shí)現(xiàn)一秒傳一個值
        }
        private void timer1_Tick(object sender, EventArgs e)
        {
            Random random = new Random();
            this.chart1.ChartAreas[0].AxisX.MajorGrid.Interval = 1;//網(wǎng)格間隔
            this.chart1.ChartAreas[0].AxisX.MinorGrid.Interval = 1;
            this.chart1.ChartAreas[0].AxisY.MajorGrid.Interval = 1;//網(wǎng)格間隔
            this.chart1.ChartAreas[0].AxisY.MinorGrid.Interval = 1;
            this.chart1.ChartAreas[0].AxisX.LabelStyle.Interval = 1;//設(shè)置X軸的值的間隔大小
            this.chart1.ChartAreas[0].AxisX.MajorGrid.LineColor = Color.Gray;//設(shè)置X軸網(wǎng)格線顏色
            this.chart1.ChartAreas[0].AxisY.MajorGrid.LineColor = Color.Gray;//設(shè)置Y軸網(wǎng)格線顏色
            chart1.ChartAreas[0].AxisX.ScrollBar.Enabled = true;//啟動滾動條
            this.chart1.ChartAreas[0].AxisY.LabelStyle.Enabled = false;//使Y軸的刻度隱藏
            chart1.ChartAreas[0].AxisX.ScaleView.Scroll(System.Windows.Forms.DataVisualization.Charting.ScrollType.Last);//啟用視圖實(shí)現(xiàn)數(shù)據(jù)滾動
            int value = random.Next(0, 20);//產(chǎn)生隨機(jī)數(shù)進(jìn)行賦值
            chart1.Series[0].Points.AddY(value);//對折線圖添加數(shù)據(jù)
            if(flag)//判斷標(biāo)記,如果是true表示只標(biāo)記最新,需要去掉前面的一個值
            {
                this.chart1.Series[0].Points[index].MarkerStyle = MarkerStyle.Circle;//設(shè)置標(biāo)記的形狀為圓形
                this.chart1.Series[0].Points[index].MarkerColor = Color.Red;//形狀顏色設(shè)置
                this.chart1.Series[0].Points[index].MarkerBorderWidth = 3;//形狀大小設(shè)置
                this.chart1.Series[0].Points[index].MarkerSize = 10;//設(shè)置我們展示標(biāo)記的大小
                this.chart1.Series[0].Points[index].Label = "功能:" + this.chart1.Series[0].Name + "\r\n" + "值:" + value.ToString();//對標(biāo)記展示的值
                this.chart1.Series[0].Points[index].IsValueShownAsLabel = true;//展示標(biāo)記
                this.chart1.Series[0].Points[index-1].MarkerBorderWidth = 0;//改前一個標(biāo)記的大小
                this.chart1.Series[0].Points[index - 1].MarkerSize = 0;//形狀大小
                this.chart1.Series[0].Points[index - 1].Label = "";//展示數(shù)據(jù)
                this.chart1.Series[0].Points[index - 1].IsValueShownAsLabel = false;//不展示
            }
            else//對數(shù)據(jù)一直標(biāo)記
            {
                this.chart1.Series[0].Points[index].MarkerStyle = MarkerStyle.Circle;
                this.chart1.Series[0].Points[index].MarkerColor = Color.Red;
                this.chart1.Series[0].Points[index].MarkerBorderWidth = 3;
                this.chart1.Series[0].Points[index].MarkerSize = 10;
                this.chart1.Series[0].Points[index].Label = "功能:" + this.chart1.Series[0].Name + "\r\n" + "值:" + value.ToString();
                this.chart1.Series[0].Points[index].IsValueShownAsLabel = true;
            }
           //也可以加一種狀態(tài)是什么也不標(biāo)記,你們自己對那個狀態(tài)值的處理就可以啦
            index++;
        }

        private void button2_Click(object sender, EventArgs e)//只標(biāo)記最新按鈕
        {
            flag = !flag;//對狀態(tài)值的改變,我就使用了兩種狀態(tài),你們可以改
        }
    }
}

總結(jié)

這篇文章主要是對博主遇到的一個問題的一種簡單的解決辦法,雖然很簡單,但是還是有技術(shù)含量的,C#的問題太多了,而去解決的人太少,我們要懂得分享,而我們發(fā)文章的人太少啦,所以我把我遇到的一些問題的解決辦法發(fā)出來,讓大家指點(diǎn)我一下,我們一起學(xué)習(xí)一下,當(dāng)然還有別的方法,別的方法是用鼠標(biāo)點(diǎn)擊展示

到此這篇關(guān)于C# Chart控件標(biāo)記問題詳解的文章就介紹到這了,更多相關(guān)C# Chart控件標(biāo)記內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

  • C#檢測是否有u盤插入的方法

    C#檢測是否有u盤插入的方法

    這篇文章主要介紹了C#檢測是否有u盤插入的方法,涉及C#操作硬件的相關(guān)技巧,需要的朋友可以參考下
    2015-04-04
  • C#線程開發(fā)之System.Thread類詳解

    C#線程開發(fā)之System.Thread類詳解

    本文詳細(xì)講解了C#線程開發(fā)之System.Thread類,文中通過示例代碼介紹的非常詳細(xì)。對大家的學(xué)習(xí)或工作具有一定的參考借鑒價值,需要的朋友可以參考下
    2022-05-05
  • 教你C#將CSV轉(zhuǎn)為Excel的實(shí)現(xiàn)方法

    教你C#將CSV轉(zhuǎn)為Excel的實(shí)現(xiàn)方法

    這篇文章主要介紹了C#?將CSV轉(zhuǎn)為Excel,轉(zhuǎn)換之后可執(zhí)行更多關(guān)于數(shù)據(jù)編輯、格式設(shè)置等操作,代碼簡單易懂,對大家的學(xué)習(xí)或工作具有一定的參考借鑒價值,需要的朋友參考下吧
    2022-03-03
  • C#面向?qū)ο笤O(shè)計原則之接口隔離原則

    C#面向?qū)ο笤O(shè)計原則之接口隔離原則

    這篇文章介紹了C#面向?qū)ο笤O(shè)計原則之接口隔離原則,文中通過示例代碼介紹的非常詳細(xì)。對大家的學(xué)習(xí)或工作具有一定的參考借鑒價值,需要的朋友可以參考下
    2022-03-03
  • C#后端接收form-data,創(chuàng)建實(shí)體類教程

    C#后端接收form-data,創(chuàng)建實(shí)體類教程

    這篇文章主要介紹了C#后端接收form-data,創(chuàng)建實(shí)體類教程,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教
    2022-06-06
  • C#9新特性init only setter的使用

    C#9新特性init only setter的使用

    這篇文章主要介紹了C#9新特性init only setter的使用,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2020-12-12
  • C#運(yùn)行時相互關(guān)系淺析

    C#運(yùn)行時相互關(guān)系淺析

    這篇文章介紹了C#運(yùn)行時相互關(guān)系,包括運(yùn)行時類型、對象、線程棧和托管堆之間的相互關(guān)系,靜態(tài)方法、實(shí)例方法和虛方法的區(qū)別等等。
    2015-10-10
  • C#如何實(shí)現(xiàn)調(diào)取釘釘考勤接口的功能

    C#如何實(shí)現(xiàn)調(diào)取釘釘考勤接口的功能

    這篇文章主要介紹了C#如何實(shí)現(xiàn)調(diào)取釘釘考勤接口的功能,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教
    2022-08-08
  • C#中通過LRU實(shí)現(xiàn)通用高效的超時連接探測

    C#中通過LRU實(shí)現(xiàn)通用高效的超時連接探測

    這篇文章主要介紹了c#中通過LRU實(shí)現(xiàn)通用高效的超時連接探測,非常不錯,具有一定的參考借鑒價值 ,需要的朋友可以參考下
    2018-11-11
  • C#實(shí)現(xiàn)希爾排序算法的實(shí)踐

    C#實(shí)現(xiàn)希爾排序算法的實(shí)踐

    希爾排序算法是基于插入排序改進(jìn)的一種排序方法,通過分組和遞減增量的策略來提高排序效率,學(xué)習(xí)希爾排序可以幫助理解排序算法原理,拓寬算法思維,并解決實(shí)際問題,感興趣的可以了解一下
    2024-10-10

最新評論

杨浦区| 余干县| 鄂伦春自治旗| 桂阳县| 宜兰市| 门头沟区| 门头沟区| 安多县| 靖西县| 东莞市| 宜兰市| 蒙城县| 和顺县| 永城市| 繁昌县| 台北县| 德兴市| 保靖县| 乐平市| 高尔夫| 九龙坡区| 杭锦后旗| 海安县| 会昌县| 栾川县| 邛崃市| 凤山县| 凭祥市| 汝阳县| 林西县| 裕民县| 镇雄县| 休宁县| 南乐县| 乌拉特后旗| 当涂县| 常熟市| 西平县| 临夏市| 博乐市| 金沙县|