国产 无码 综合区,色欲AV无码国产永久播放,无码天堂亚洲国产AV,国产日韩欧美女同一区二区

利用ECharts實現(xiàn)winform中的可視化圖表

這篇具有很好參考價值的文章主要介紹了利用ECharts實現(xiàn)winform中的可視化圖表。希望對大家有所幫助。如果存在錯誤或未考慮完全的地方,請大家不吝賜教,您也可以點擊"舉報違法"按鈕提交疑問。

背景

如今web端的圖表可以說是非常豐富且用起來方便,ECharts已經(jīng)非常成熟了,如果在winform中使用那就太好了。

思路

使用winfrom程序封裝一個web控件,然后進行展示就可以了,說干就干!

第一步(先搞一個能展示圖表的html文件)

按照ECharts官網(wǎng)搞了一個折線圖,效果如下
利用ECharts實現(xiàn)winform中的可視化圖表

第二步(封裝到winform中)

這里重點強調(diào)一下,不要使用webBrowser,因為這個東西的引擎導(dǎo)致一些渲染有問題

引入Web.View2

 <PackageReference Include="Microsoft.Web.WebView2" Version="1.0.1722.45" />

在winfrom的工具箱中就能看到控件了

利用ECharts實現(xiàn)winform中的可視化圖表

第三步 寫代碼

在窗體加載后,將webview的url給到指定的html文件就可以了
我這個放在根目錄了

  private void Form1_Load(object? sender, EventArgs e)
        {
            webView21.Source = new Uri(AppDomain.CurrentDomain.BaseDirectory + "line_chart.html");

        }

到此一切都挺好,能正常顯示了。但是不能交互。

第四步 winfrom與html交互

在html中增加方法 如下

 function LoadData(data) {
            myChart.setOption({
                series:  data
            });
        }

html的完整代碼如下

<!--
    此示例下載自 https://echarts.apache.org/examples/zh/editor.html?c=dynamic-data2
-->
<!DOCTYPE html>
<html lang="zh-CN" style="height: 100%">
<head>
    <meta charset="utf-8">
</head>
<body style="height: 100%; margin: 0">
    <div id="container" style="height: 100%"></div>


    <script type="text/javascript" src="echarts.min.js"></script>
   

    <script type="text/javascript">
        var dom = document.getElementById('container');
        var myChart = echarts.init(dom, null, {
            renderer: 'canvas',
            useDirtyRect: false
        });
        var app = {};

        var option;

       
        option = {
            title: {
                text: '這是一個測試數(shù)據(jù)'
            },
            tooltip: {
                trigger: 'axis',
                
                axisPointer: {
                    animation: true
                }
            },
            xAxis: {
                type: 'category',
                splitLine: {
                    show: false
                }
            },
            yAxis: {
                type: 'value',
                boundaryGap: [0, '100%'],
                splitLine: {
                    show: false
                }
            },
            dataZoom: [{
                type: 'slider',//圖表下方的伸縮條
                show: true, //是否顯示
                realtime: true, //拖動時,是否實時更新系列的視圖
                start: 0, //伸縮條開始位置(1-100),可以隨時更改
                end: 100, //伸縮條結(jié)束位置(1-100),可以隨時更改
            }],
            toolbox: {
                show: true,
                feature: {
                    dataZoom: {
                        yAxisIndex: "none"
                    }
                }
            },
            series: [
            ]
        };
        

        if (option && typeof option === 'object') {
            myChart.setOption(option);
        }

        window.addEventListener('resize', myChart.resize);

       
        function LoadData(data) {
            myChart.setOption({
                series:  data
            });
        }

    </script>
</body>
</html>

在winfrom中增加調(diào)用方法

  private void toolStripLabel1_Click(object sender, EventArgs e)
        {
            OpenFileDialog openFileDialog = new OpenFileDialog();
            openFileDialog.Filter = "*.data|*.data";
            openFileDialog.InitialDirectory = AppDomain.CurrentDomain.BaseDirectory;
            openFileDialog.ShowDialog();
            if (string.IsNullOrEmpty(openFileDialog.FileName)) return;
            var s = File.ReadAllText(openFileDialog.FileName);
            var js = $"let dd = {s};" +
                $"LoadData(dd);";
            webView21.CoreWebView2.ExecuteScriptAsync(js);
        }

數(shù)據(jù)文件代碼

[
  {
    "name": "測試數(shù)1",
    "type": "line",
    "showSymbol": false,
    "data": [
      [ "a", 1 ],
      [ "b", 2 ],
      [ "c", 3 ],
      [ "d", 4 ],
      [ "e", 5 ],
      [ "f", 6 ],
      [ "h", 7 ],
      [ "i", 8 ],
      [ "j", 9 ],
      [ "k", 10 ]
    ]
  },
  {
    "name": "測試數(shù)2",
    "type": "line",
    "showSymbol": false,
    "data": [
      [ "a", 10 ],
      [ "b", 20 ],
      [ "c", 30 ],
      [ "d", 40 ],
      [ "e", 50 ],
      [ "f", 60 ],
      [ "h", 70 ],
      [ "i", 80 ],
      [ "j", 90 ],
      [ "k", 10 ]
    ]
  }

]

完整的運行效果

利用ECharts實現(xiàn)winform中的可視化圖表文章來源地址http://www.zghlxwxcb.cn/news/detail-436170.html

到了這里,關(guān)于利用ECharts實現(xiàn)winform中的可視化圖表的文章就介紹完了。如果您還想了解更多內(nèi)容,請在右上角搜索TOY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!

本文來自互聯(lián)網(wǎng)用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務(wù),不擁有所有權(quán),不承擔(dān)相關(guān)法律責(zé)任。如若轉(zhuǎn)載,請注明出處: 如若內(nèi)容造成侵權(quán)/違法違規(guī)/事實不符,請點擊違法舉報進行投訴反饋,一經(jīng)查實,立即刪除!

領(lǐng)支付寶紅包贊助服務(wù)器費用

相關(guān)文章

  • ECharts配合Node.js爬蟲實現(xiàn)數(shù)據(jù)可視化

    ECharts配合Node.js爬蟲實現(xiàn)數(shù)據(jù)可視化

    可視化技術(shù)是將數(shù)據(jù)和信息以圖形化的方式展示出來,以便更好地理解和分析??梢暬夹g(shù)通常使用各種圖表、圖形、動畫和交互式效果來呈現(xiàn)數(shù)據(jù)??梢暬夹g(shù)有以下幾個基本概念: 數(shù)據(jù):可視化技術(shù)的基礎(chǔ)是數(shù)據(jù)。數(shù)據(jù)可以是數(shù)字、文本、圖片、視頻等形式。數(shù)據(jù)可以通

    2024年02月11日
    瀏覽(23)
  • vue-使用echarts+echarts-gl實現(xiàn)某個省份地區(qū)地圖3d可視化

    前言 最近在開發(fā)中遇到一個需求,需要把一個地區(qū)地圖變成3d感覺懸浮在大屏中間配合業(yè)務(wù)需求 其實echarts配合三方庫就可以實現(xiàn)這個效果,具體細(xì)節(jié)需要自己調(diào)整 代碼實現(xiàn) 1.下載各省份各地區(qū)地圖數(shù)據(jù)-json文件-根據(jù)需求下載對應(yīng)地圖json數(shù)據(jù)引入即可 最新全國地圖JSON數(shù)據(jù)

    2024年01月20日
    瀏覽(28)
  • echarts地圖 可視化大屏使用echarts-map實現(xiàn)地圖輪播效果

    echarts地圖 可視化大屏使用echarts-map實現(xiàn)地圖輪播效果

    記錄一下大屏開發(fā)中使用到的echartsMap 大屏的頁面根據(jù)需求前前后后改了幾個版本了,地圖的樣式也改了又改 這里記錄一下,因為echarts屬性用到的比較多也比較雜,防止以后需要用到忘記了 初始效果 效果圖: 適應(yīng)大屏風(fēng)格的發(fā)光地圖效果,用了兩個圖層實現(xiàn)疊加背景圖片實

    2024年02月16日
    瀏覽(22)
  • Python flask + Mysql +Echarts :實現(xiàn)數(shù)據(jù)可視化(玫瑰圖)

    Python flask + Mysql +Echarts :實現(xiàn)數(shù)據(jù)可視化(玫瑰圖)

    步驟一:建立Myslq數(shù)據(jù)庫連接 步驟二:開發(fā)Flask應(yīng)用 步驟三:創(chuàng)建前端頁面(house_bing.html?) 步驟四:運行Flask應(yīng)用并查看玫瑰圖 render_template():調(diào)用了”render_template()”方法來渲染模板。方法的第一個參數(shù)”echarts.html”指向你想渲染的模板名稱,第二個參數(shù)”data”是你要傳

    2024年02月22日
    瀏覽(25)
  • Flask+echarts爬取天氣預(yù)報數(shù)據(jù)并實現(xiàn)可視化

    Flask+echarts爬取天氣預(yù)報數(shù)據(jù)并實現(xiàn)可視化

    右鍵新建一個crawl.py文件,代碼如下,將爬取到的數(shù)據(jù)存儲到tianqi.txt文件中, 右鍵新建一個flask01.py的文件,對爬取到的數(shù)據(jù)進行讀取,并轉(zhuǎn)換為列表類型,傳遞給index.html頁面,echarts的圖表樣例負(fù)責(zé)接收并渲染,代碼如下, 在根目錄下,新建一個名為templates目錄,該目錄名

    2024年02月11日
    瀏覽(26)
  • Selenium + Django + Echarts 實現(xiàn)亞馬遜商品數(shù)據(jù)可視化爬蟲項目

    Selenium + Django + Echarts 實現(xiàn)亞馬遜商品數(shù)據(jù)可視化爬蟲項目

    最近完成了1個爬蟲項目,記錄一下自己的心得。 根據(jù)用戶輸入商品名稱、類別名稱,使用Selenium, BS4等技術(shù)每天定時抓取亞馬遜商品數(shù)據(jù),使用Pandas進行數(shù)據(jù)清洗后保存在MySql數(shù)據(jù)庫中. 使用Django提供用戶端功能,顯示商品數(shù)據(jù),以可視化的方式分析數(shù)據(jù),以及數(shù)據(jù)抓取任務(wù)管

    2024年01月25日
    瀏覽(23)
  • 關(guān)于微信小程序中如何實現(xiàn)數(shù)據(jù)可視化-echarts動態(tài)渲染

    關(guān)于微信小程序中如何實現(xiàn)數(shù)據(jù)可視化-echarts動態(tài)渲染

    移動端設(shè)備中,難免會涉及到數(shù)據(jù)的可視化展示、數(shù)據(jù)統(tǒng)計等等,本篇主要講解原生微信小程序中嵌入 echarts 并進行動態(tài)渲染,實現(xiàn)數(shù)據(jù)可視化功能。 基礎(chǔ)使用 首先在 GitHub 上下載 echarts 包 地址:https://github.com/ecomfe/echarts-for-weixin/tree/master 下載項目 解壓壓縮包,將 ec-canva

    2024年01月25日
    瀏覽(220)
  • 記錄--手把手教你Vue+ECharts+高德地圖API實現(xiàn)天氣預(yù)報數(shù)據(jù)可視化

    記錄--手把手教你Vue+ECharts+高德地圖API實現(xiàn)天氣預(yù)報數(shù)據(jù)可視化

    所謂數(shù)據(jù)可視化,我們可以理解為從宏觀角度來看一眼就能看出來整個數(shù)據(jù)的占比,走向。對于數(shù)據(jù)可視化,很多互聯(lián)網(wǎng)公司是很看重這一塊的,包括大廠;就比如阿里的淘寶,雙十一的時候往往就需要將消費者的一些數(shù)據(jù)通過圖的形式展現(xiàn)出來。接下來我們就來實現(xiàn)一個天

    2024年02月07日
    瀏覽(23)
  • Echarts數(shù)據(jù)可視化 第4章 Echarts可視化圖 4.10 熱力圖

    Echarts數(shù)據(jù)可視化 第4章 Echarts可視化圖 4.10 熱力圖

    Echarts數(shù)據(jù)可視化 Echarts數(shù)據(jù)可視化:入門、實戰(zhàn)與進階 第4章 Echarts可視化圖 4.10 熱力圖 熱力圖是一種密度圖,使用不同顏色和不同顏色深淺程度來表示數(shù)據(jù)量的區(qū)別。 舉個栗子 渲染效果 解釋一下這個圖 其中橫軸代表小時,縱軸表示星期幾,圖中不同顏色的區(qū)塊代表了數(shù)據(jù)

    2024年02月14日
    瀏覽(26)
  • 利用大數(shù)據(jù)分析工具,實現(xiàn)多場景可視化數(shù)據(jù)管理

    利用大數(shù)據(jù)分析工具,實現(xiàn)多場景可視化數(shù)據(jù)管理

    https://yanhuang.yuque.com/staff-sbytbc/rb5rur? 購買服務(wù)器 購買騰訊云服務(wù)器,1300 元新人價,一年時間 ●4核16G內(nèi)存 ●CentOS 6.7 (補充說明:最新的 2.7.1 GA 版本,8G 內(nèi)存也是可以跑的,可以先使用8G,不夠再做升級)。 安裝docker環(huán)境 安裝docker,速度還挺快的,大概3~5分鐘內(nèi) 1、注冊鴻

    2024年02月14日
    瀏覽(23)

覺得文章有用就打賞一下文章作者

支付寶掃一掃打賞

博客贊助

微信掃一掃打賞

請作者喝杯咖啡吧~博客贊助

支付寶掃一掃領(lǐng)取紅包,優(yōu)惠每天領(lǐng)

二維碼1

領(lǐng)取紅包

二維碼2

領(lǐng)紅包