首页 > 其他分享 >echart画图

echart画图

时间:2024-04-27 14:56:04浏览次数:17  
标签:echart LANDNUM show true AREA 画图 type data

   

 

 

一.html部分

 <body>
        <script src="js/echarts.min.js"></script>
        <p id="TwoLineChart" style="width:100%; height:400px;"></p>
  </body>

 二.js部分

     var myChart = echarts.init(document.getElementById('TwoLineChart'));
    
    // 显示标题,图例和空的坐标轴
    myChart.setOption({
        title: {
            text: '异步数据加载示例'
        },
        tooltip: {
            trigger: 'axis'
        },
        legend: {
            data: ['进件', '办结']
        },
        toolbox: {
            show: true,
            feature: {
                mark: { show: true },
                dataView: { show: true, readOnly: false },
                magicType: { show: true, type: ['line', 'bar'] },
                restore: { show: true },
                saveAsImage: { show: true }
            }
        },
        calculable: true,
        xAxis: {
            type: 'category',
            boundaryGap: false, //取消左侧的间距
            data: []
        },
        yAxis: {
            type: 'value',
            splitLine: { show: false },//去除网格线
            name: ''
        },
        series: [{
            name: '进件',
            type: 'line',
            symbol: 'emptydiamond',    //设置折线图中表示每个坐标点的符号 emptycircle:空心圆;emptyrect:空心矩形;circle:实心圆;emptydiamond:菱形
            data: []
        },
        {
            name: '办结',
            type: 'line',
            symbol: 'emptydiamond',    //设置折线图中表示每个坐标点的符号 emptycircle:空心圆;emptyrect:空心矩形;circle:实心圆;emptydiamond:菱形
            data: []
        }]
    });
    myChart.showLoading();    //数据加载完之前先显示一段简单的loading动画
    
    // 画图数据设置
    var data_id=0;
    var names = [];    //类别数组(实际用来盛放X轴坐标值)    
    var series1 = [];
    var series2 = [];    
    myChart.hideLoading();    //隐藏加载动画

  

3 画图动态部分

        // 定时器设置
        setInterval
        (
                function ()
                {  

              
                // 画图更新
                data_id=data_id+1;
                if(data_id<8){
                }
                else{
                  //delete data_draw[0];
                  names.shift();// 移除最前面的
                  series1.shift();// 移除最前面的
                  series2.shift();// 移除最前面的
                }
                names.push(data_id);    //挨个取出类别并填入类别数组
                series1.push(data_id);
                series2.push(data_id+2);
                
                myChart.setOption({        //加载数据图表
                    xAxis: {
                        data: names
                    },
                    series: [{                    
                        data: series1
                    },
                    {
                        data: series2
                    }]
                });

     
               },2000)

  

 

 

 

 

 

 

 

====================================

原网址 http请求 json解析

 

二.js部分

<script type="text/JavaScript">
 
function loadTwoLine() {
    var myChart = echarts.init(document.getElementById('TwoLineChart'));
    // 显示标题,图例和空的坐标轴
    myChart.setOption({
        title: {
            text: '异步数据加载示例'
        },
        tooltip: {
            trigger: 'axis'
        },
        legend: {
            data: ['进件', '办结']
        },
        toolbox: {
            show: true,
            feature: {
                mark: { show: true },
                dataView: { show: true, readOnly: false },
                magicType: { show: true, type: ['line', 'bar'] },
                restore: { show: true },
                saveAsImage: { show: true }
            }
        },
        calculable: true,
        xAxis: {
            type: 'category',
            boundaryGap: false, //取消左侧的间距
            data: []
        },
        yAxis: {
            type: 'value',
            splitLine: { show: false },//去除网格线
            name: ''
        },
        series: [{
            name: '进件',
            type: 'line',
            symbol: 'emptydiamond',    //设置折线图中表示每个坐标点的符号 emptycircle:空心圆;emptyrect:空心矩形;circle:实心圆;emptydiamond:菱形
            data: []
        },
        {
            name: '办结',
            type: 'line',
            symbol: 'emptydiamond',    //设置折线图中表示每个坐标点的符号 emptycircle:空心圆;emptyrect:空心矩形;circle:实心圆;emptydiamond:菱形
            data: []
        }]
    });
    myChart.showLoading();    //数据加载完之前先显示一段简单的loading动画
    var names = [];    //类别数组(实际用来盛放X轴坐标值)    
    var series1 = [];
    var series2 = [];
    $.ajax({
        type: 'get',
        url: 'json/echarts/line/lineTwo.txt',//请求数据的地址
        dataType: "json",        //返回数据形式为json
        success: function (result) {
            //请求成功时执行该函数内容,result即为服务器返回的json对象           
            $.each(result.jinJian, function (index, item) {
                names.push(item.AREA);    //挨个取出类别并填入类别数组
                series1.push(item.LANDNUM);
            });
            $.each(result.banJie, function (index, item) {
                series2.push(item.LANDNUM);
            });
            myChart.hideLoading();    //隐藏加载动画
            myChart.setOption({        //加载数据图表
                xAxis: {
                    data: names
                },
                series: [{                    
                    data: series1
                },
                {
                    data: series2
                }]
            });
        },
        error: function (errorMsg) {
            //请求失败时执行该函数
            alert("图表请求数据失败!");
            myChart.hideLoading();
        }
    });
};
loadTwoLine();
</script>

   三.json格式如下:

{
    "jinJian":[
        {
            "AREA":"选址阶段",
            "LANDNUM":190
        },
        {
            "AREA":"用地阶段",
            "LANDNUM":200
        },
        {
            "AREA":"设计方案",
            "LANDNUM":310
        },
        {
            "AREA":"工程规划",
            "LANDNUM":290
        },
        {
            "AREA":"施工许可",
            "LANDNUM":260
        },
        {
            "AREA":"销售许可",
            "LANDNUM":300
        },
        {
            "AREA":"规划验收",
            "LANDNUM":320
        },
        {
            "AREA":"综合验收",
            "LANDNUM":290
        },
        {
            "AREA":"档案验收",
            "LANDNUM":280
        }
    ],
    "banJie":[
        {
            "AREA":"选址阶段",
            "LANDNUM":100
        },
        {
            "AREA":"用地阶段",
            "LANDNUM":120
        },
        {
            "AREA":"设计方案",
            "LANDNUM":140
        },
        {
            "AREA":"工程规划",
            "LANDNUM":160
        },
        {
            "AREA":"施工许可",
            "LANDNUM":180
        },
        {
            "AREA":"销售许可",
            "LANDNUM":200
        },
        {
            "AREA":"规划验收",
            "LANDNUM":220
        },
        {
            "AREA":"综合验收",
            "LANDNUM":240
        },
        {
            "AREA":"档案验收",
            "LANDNUM":250
        }
    ]
    
}

  

标签:echart,LANDNUM,show,true,AREA,画图,type,data
From: https://www.cnblogs.com/gooutlook/p/18162046

相关文章

  • Echarts多条折线图line显示数值和真实数值不一致
    问题图: 折线图数据显示不匹配原因:在line的配置项中加了"stack"这一项配置,stack为‘Total’或‘总量’的情况下,y轴不是真实的value的值,而是value的总量值。既后续折现的数值在前数值的基础上相加.       官网对stack的描述:数据堆叠,同个类目轴上系列配置相同的st......
  • vue3使用echarts的tree,自己写事件进行分页
    vue3使用echarts的tree,自己写事件进行分页  先到npmjs官网查看当前使用最多的版本https://www.npmjs.com/package/echarts 看了下5.5.0用的最多[email protected] 以下的demo(“@/flare”是后面的flare.json数据)<template><divid="chart-container"></div......
  • echart 常用属性
    echart常用属性基础属性title左上角标题legend每一项的列表xAxis:x轴上的数据yAxis:y轴上的数据提示框tooltip:{trigger:'axis'},demo地址:https://echarts.apache.org/v4/examples/zh/editor.html?c=line-stack文字转动斜着摆放axisLabel.rota......
  • 【学习笔记】Python 使用 matplotlib 画图
    目录安装中文显示折线图、点线图柱状图、堆积柱状图坐标轴断点参考资料本文将介绍如何使用Python的matplotlib库画图,记录一些常用的画图demo代码安装#建议先切换到虚拟环境中pipinstallmatplotlib中文显示新版的matplotlib已经支持字体回退功能,因此可以直接设置......
  • echarts折线图使用dataZoom,切换数据时渲染异常,出现竖线bug
     今天做项目遇到一个省份过多时,要加滚动条的需求。但是切换数据的时候,出现上图所出现的问题。经查资料,发现可以设置一个属性来解决这个问题。    filterMode:'empty' dataZoom:{     show:this.xiaonengXData.length>12?true:false,//为true滚动条......
  • ECharts海量数据渲染解决卡顿的4种方式
    场景周五进行需求评审的时候;出现了一个图表,本身一个图表本没有什么稀奇的;可是产品经理在图表的上的备注,让我觉得这个事情并不简单;那个图表的时间跨度可以是月,年,而且时间间隔很短;这让我意识到事情并不是想的那样简单;然后经过简单的询问:如果选择的范围是年;数据可能会上万;我......
  • pyecharts显示地图,并且渲染
    frompyecharts.chartsimportMapfrompyechartsimportoptionsasoptsfrompyecharts.globalsimportThemeTypedata=[('山东省',99),('上海市',199),('湖南省',299),('台湾省',399),('广东省',499)]......
  • echarts柱状图 实现点击每个柱状图跳转到新页面
    myChart.setOption(option);myChart.getZr().on('click',params=>{//规定代码块↓↓constpointInPixel=[params.offsetX,params.offsetY];if(myChart.containPixel('......
  • 需求分析画图
    一、实验题目:需求分析二、实验目的1、掌握StarUML软件的安装;2、掌握利用StarUML工具分析、设计、绘制用例图;3、掌握利用StarUML工具分析、设计、绘制类图;4、掌握利用StarUML工具分析、设计、绘制状态图;5、掌握利用StarUML工具分析、设计、绘制顺序图。6、掌握利用StarUML......
  • 学习unigui【24】Echart的使用:多个坐标系
    使用echart非常简单,网上有介绍。主要放一个unihtmlFrame。然后unihtmlframe.text:='html的代码',就会渲染(初次调用echart的js库要一点稍后)。unigui本身的chart貌似不能动态生成。option={title:[{text:'TOP10(抗菌药物使用人数)',top:'1......