热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

cesium3dtiles加载本地数据_深入echarts学习:加载跨域、异步、本地json数据的防坑录

1说明:1.1推荐指数:★★★★1.2网上这方面说明,大多模棱两可,坑很多,讲透彻的不多,故本人

1 说明:

=====

1.1 推荐指数:★★★★

1.2 网上这方面说明,大多模棱两可,坑很多,讲透彻的不多,故本人做一个小结。

1.3 我曾介绍echarts的简单基本用法:

《Echarts:是一个百度的开源的、强大的、傻瓜式数据可视化js库》

1.4 今日深入介绍如何加载本地json数据,因为可能如果数据较多或者较大时,比较适合json文件格式。

1.5 本文属于html和服务器的基本知识,暂时不属于python,部分条友暂时可以了解,只是回应一个条友的问题。

0b31754ead0be4ff95e6c45eed4a3049.png

掉坑过么?看这篇你就透彻了。

2 模拟异步加载数据:

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

2.1 在线引用2个js文件,注意为了便于阅读,尤其是手机阅读,代码尽量向左对齐。

2.2 代码:ybecharts1.html

Echarts模拟异步3秒后加载

2.3 效果图:

d9a8b8f3783525d61aaf5f9741e71655.gif

3 本地json加载:

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

3.1 文件夹:ybecharts2

b9e9f87cf4bfd9db40f8decc2a40a60d.png

3.2 文件夹ybecharts2:下有三个文件:

c862412532af92fdecb06879a97a73c9.png

3.3 ybecharts2.html代码:

echarts异步加载本地json数据并显示图

3.4 ybecharts2.js代码:

jQuery(document).ready(function($) { var myChart = echarts.init(document.getElementById('main')); var option = { title : {//标题 text: 'Html学院男女数据统计', subtext: '2020年' }, tooltip : { trigger: 'axis' }, legend: {//图例:2组:男女 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 : [//x轴 { type : 'category', data : []//对应院系数据 } ], yAxis : [//y轴 { type : 'value' } ], series : [ { name:'女', type:'bar', data:[],//对应下面数据中的女数据 itemStyle: { normal: { label : { show: true, position: 'top' } } } }, { name:'男', type:'bar', data:[],//对应下面男数据 itemStyle: { normal: { label : { show: true, position: 'top' } } } } ]}; //设置图表myChart.setOption(option);//获取和处理数据,加载本地json,异步和跨域$.getJSON("ybdata2.json",function(json){ var d=json.data; var nanlist = [];//男 var nvlist = [];//女 var deplist=[];//院系名称// 循环获取男生数量,女生数量及院系名称for(var i=0;i

3.5 ybdata2.json代码:

{"data": [ {"sex":"男","value":45,"depname":"Html学院"}, {"sex":"女","value":78,"depname":"Html学院"}, {"sex":"女","value":123,"depname":"Javascript学院"}, {"sex":"男","value":13,"depname":"Javascript学院"}, {"sex":"男","value":25,"depname":"Css语学院"}, {"sex":"女","value":65,"depname":"Css语学院"} ]}

3.6 常规操作,不显示加载本地json数据的图表

35834f83434a1b26b8e0b34da7de8162.gif

出问题了,有坑!!

4 解决办法:

========

4.1 修改浏览器属性:

在网上输入:

浏览器加载本地json

就有window操作系统的方法,我不推荐。

可能会有泄露用户数据的危险。

4.2 用tomcat方法:推荐

在本地搭建一个web服务器,来解决跨域、异步、加载本地json数据问题。

5 Tomcat:

=======

5.1 官网:

http://tomcat.apache.org/

5.2 本机是linux操作系统,window操作系统大同小异。

5.3 下载:

https://tomcat.apache.org/download-90.cgi

apache-tomcat-9.0.37.tar.gz,放在根目录下

5.4 解压:

tar -zxf apache-tomcat-9.0.37.tar.gz #解压

5.5 启动:

./apache-tomcat-9.0.37/bin/startup.sh # 启动 Tomcat

5.6 打开测试页:

启动后,访问 http://localhost:8080 ,可以看到 Tomcat 安装成功的测试页面。

6 用Tomcat解决加载本地json数据的方法:

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

6.1 将文件夹:ybecharts2(本文第3部分的文件夹和内容)复制到webapps下,本机如下

file:///home/xgj/apache-tomcat-9.0.37/webapps。

6.2 我新建一个selfexample文件夹,以免混淆。

61cdfc380ff66e9d8f87da190a831da2.png

6.3 启动方法:

6.3.1 第一步:

#打开终端,输入./apache-tomcat-9.0.37/bin/startup.sh # 启动 Tomcat

6.3.2 第二步:

因为:本机html文件在该目录下

/home/xgj/apache-tomcat-9.0.37/webapps/selfexample/ybecharts2/ybecharts2.html

所以:

#复制下面链接,在浏览器中打开,即可http://localhost:8080/selfexample/ybecharts2/ybecharts2.html

6.4 操作和效果:

f2ba63737d3d55c2812e85ecd183d8ab.gif

===自己整理并分享出来===

喜欢的人,请点赞、关注、转发、评论和收藏。



推荐阅读
  • 本文介绍了在开发Android新闻App时,搭建本地服务器的步骤。通过使用XAMPP软件,可以一键式搭建起开发环境,包括Apache、MySQL、PHP、PERL。在本地服务器上新建数据库和表,并设置相应的属性。最后,给出了创建new表的SQL语句。这个教程适合初学者参考。 ... [详细]
  • 本文介绍了使用AJAX的POST请求实现数据修改功能的方法。通过ajax-post技术,可以实现在输入某个id后,通过ajax技术调用post.jsp修改具有该id记录的姓名的值。文章还提到了AJAX的概念和作用,以及使用async参数和open()方法的注意事项。同时强调了不推荐使用async=false的情况,并解释了JavaScript等待服务器响应的机制。 ... [详细]
  • 本文介绍了使用Java实现大数乘法的分治算法,包括输入数据的处理、普通大数乘法的结果和Karatsuba大数乘法的结果。通过改变long类型可以适应不同范围的大数乘法计算。 ... [详细]
  • Voicewo在线语音识别转换jQuery插件的特点和示例
    本文介绍了一款名为Voicewo的在线语音识别转换jQuery插件,该插件具有快速、架构、风格、扩展和兼容等特点,适合在互联网应用中使用。同时还提供了一个快速示例供开发人员参考。 ... [详细]
  • 本文介绍了解决Netty拆包粘包问题的一种方法——使用特殊结束符。在通讯过程中,客户端和服务器协商定义一个特殊的分隔符号,只要没有发送分隔符号,就代表一条数据没有结束。文章还提供了服务端的示例代码。 ... [详细]
  • Iamtryingtomakeaclassthatwillreadatextfileofnamesintoanarray,thenreturnthatarra ... [详细]
  • 本文介绍了如何使用php限制数据库插入的条数并显示每次插入数据库之间的数据数目,以及避免重复提交的方法。同时还介绍了如何限制某一个数据库用户的并发连接数,以及设置数据库的连接数和连接超时时间的方法。最后提供了一些关于浏览器在线用户数和数据库连接数量比例的参考值。 ... [详细]
  • 如何使用Java获取服务器硬件信息和磁盘负载率
    本文介绍了使用Java编程语言获取服务器硬件信息和磁盘负载率的方法。首先在远程服务器上搭建一个支持服务端语言的HTTP服务,并获取服务器的磁盘信息,并将结果输出。然后在本地使用JS编写一个AJAX脚本,远程请求服务端的程序,得到结果并展示给用户。其中还介绍了如何提取硬盘序列号的方法。 ... [详细]
  • 本文讨论了如何优化解决hdu 1003 java题目的动态规划方法,通过分析加法规则和最大和的性质,提出了一种优化的思路。具体方法是,当从1加到n为负时,即sum(1,n)sum(n,s),可以继续加法计算。同时,还考虑了两种特殊情况:都是负数的情况和有0的情况。最后,通过使用Scanner类来获取输入数据。 ... [详细]
  • 本文介绍了C#中数据集DataSet对象的使用及相关方法详解,包括DataSet对象的概述、与数据关系对象的互联、Rows集合和Columns集合的组成,以及DataSet对象常用的方法之一——Merge方法的使用。通过本文的阅读,读者可以了解到DataSet对象在C#中的重要性和使用方法。 ... [详细]
  • 本文介绍了OC学习笔记中的@property和@synthesize,包括属性的定义和合成的使用方法。通过示例代码详细讲解了@property和@synthesize的作用和用法。 ... [详细]
  • Mac OS 升级到11.2.2 Eclipse打不开了,报错Failed to create the Java Virtual Machine
    本文介绍了在Mac OS升级到11.2.2版本后,使用Eclipse打开时出现报错Failed to create the Java Virtual Machine的问题,并提供了解决方法。 ... [详细]
  • 本文介绍了在Win10上安装WinPythonHadoop的详细步骤,包括安装Python环境、安装JDK8、安装pyspark、安装Hadoop和Spark、设置环境变量、下载winutils.exe等。同时提醒注意Hadoop版本与pyspark版本的一致性,并建议重启电脑以确保安装成功。 ... [详细]
  • 本文介绍了使用PHP实现断点续传乱序合并文件的方法和源码。由于网络原因,文件需要分割成多个部分发送,因此无法按顺序接收。文章中提供了merge2.php的源码,通过使用shuffle函数打乱文件读取顺序,实现了乱序合并文件的功能。同时,还介绍了filesize、glob、unlink、fopen等相关函数的使用。阅读本文可以了解如何使用PHP实现断点续传乱序合并文件的具体步骤。 ... [详细]
  • 本文讨论了一个关于cuowu类的问题,作者在使用cuowu类时遇到了错误提示和使用AdjustmentListener的问题。文章提供了16个解决方案,并给出了两个可能导致错误的原因。 ... [详细]
author-avatar
后果搞活棵_654_962
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有