[开源] Gio.js -- 一个基于 Three.js 的 Web3D 地球数据可视化库

news/2024/7/1 18:20:13

在这里和大家分享一个和小伙伴们一起开发的开源库 Gio.js 。Gio.js 是一个基于 Three.js 的 web 3D 地球数据可视化的开源组件库。使用 Gio.js 的网页应用开发者,可以快速地以申明的方式创建自定义的 Web3D 数据可视化模型,添加数据,并且将其作为一个组件整合到自己的应用中。

  • Github 地址: https://github.com/syt123450/giojs
  • 中文官网: http://giojs.org/index_zh.html
  • Codepen 在线例子: https://codepen.io/collection/DkBobG/

Giojs globe effect preview

为什么要开发、使用 Gio.js

这个库的开发是受到 Google 2012 Info 大会上的项目世界武器贩卖可视化的启发,该项目开发者是 Google 员工 Michael Chang。使用 Gio.js 就可以快速构建这种炫酷的 3D 模型,并以此为基础进行深入地开发。Gio.js 具有以下的特点:

  • 易用性 -- 仅使用 4 行 Javascript 即可创建 3D 地球数据可视化模型
  • 定制化 -- 使用 Gio.js 提供的丰富的 API 来创建自定义样式的 3D 地球
  • 现代化 -- 基于 Gio.js 构建高交互、跨平台、自适应的现代化 3D 前端应用

基本使用介绍

通过 NPM 或者 YARN 安装 giojs

    npm install giojs --save
    yarn add giojs

在 HTML 页面中添加了 Threejs 和 Giojs 依赖之后,您就可以基于 Giojs 开发您的应用了。我们将展示如何创建一个具有基础样式的 Gio 地球。

<!DOCTYPE HTML>
<html>
<head>

  <!-- 引入 three.js -->
  <script src="three.min.js"></script>

  <!-- 引入 Gio.js -->
  <script src="gio.min.js"></script>

</head>
<body>

  <!-- 创建一个 div 作为 Gio 的绘制容器 -->
  <div id="globalArea"></div>

</body>
</html>

在页面中添加以下 Javascript 代码来初始化 Gio 地球:

<script>

    // 获得用来承载 Gio 地球的容器
    var container = document.getElementById( "globalArea" );

    // 创建 Gio 控制器
    var controller = new GIO.Controller( container );

    // 添加数据
    controller.addData( data );

    // 初始化并渲染地球
    controller.init();

</script>

文档

  • 中文 README
  • 快速了解如何使用 Giojs 开始使用文档
  • 有关 Gio.js 的 3D基础组件介绍文档
  • 详细介绍 API 文档
  • 参与 Gio.js 项目开发的 开发者文档

PS. 各位宝贵的 star 是对我们最大的鼓励与支持~


http://www.niftyadmin.cn/n/4261568.html

相关文章

python 欠采样_8个鲜为人知的Python科学库,用过三个算是高手

Python作为目前最为流行的编程语言之一&#xff0c;它在数据分析和机器学习领域发挥着十分重要的作用。在大家的日常应用过程中&#xff0c;对于数据的清洗&#xff0c;可视化等等&#xff0c;大都采用例如pandas&#xff0c;scikit-learn&#xff0c;matplotlib等库。但是除了…

问题-让人开始慢慢的思考

做了一天的程序方面的东西,思维开始飘了架构在xml上面的东东真是不好说呀 , 庞大 复杂嗨 微软的东西只能用微软的编辑,自己稍微的改一下, 就用不了了...架构要好,就要考虑到设计模式了, 有两种思想 ,一种是网站常用的思想,属于普及型的, 另一种是实验室型的,23种设计模式,我都不…

python执行函数是语句吗_python执行js语句,无函数返回值

有时候在JS代码里面抠出部分语句&#xff0c;但是不是一个函数。如下面的一段JSvar radra27radra27 "D";var ra72419ra91ra72419ra91 "7.241.9" ".";var raurst500ra63raurst500ra63 "urst500";var ravalidtora49ravalidtora49 &…

[导入]Ajax,一个全新的Web设计思想 -- Ajax的4项基本原则

摘录:<Ajax实践 P23> " 我们为自己设定的目标是:通过Web浏览器交付具有良好可用性的独占应用,以满足提高用户的生产力和通过网络来共享数据两方面的需要,同时还具备Web应用集中维护的优点.为了成功地实现这一目标,我们需要以一种完全不同的方式来思考Web页面和应用…

matlab的三条线如何区分,k线图中的三条线是什么 如何通过这3条线看买入还是卖出...

图形态可分为反转形态、整理形态及趋向线等。后K线图因其细腻独到的标画方式而被引入到股市及期货市场。股市及期货市场中的K线图的画法包含四个数据&#xff0c;即开盘价、最高价、最低价、收盘价&#xff0c;所有的k线都是围绕这四个数据展开&#xff0c;反映大势的状况和价格…

Visual Basic 2005——如何将Windows Form表单模拟成一个IE浏览器

在撰写「Visual Basic 2005程序开发与界面设计秘诀」一书时突发奇想&#xff0c;是不是可以将Windows Form表单模拟成一个IE浏览器呢&#xff1f;其实在有了WebBrowser控制项之后&#xff0c;这样的想法不难达成。不过问题在于&#xff0c;我们如何取得电脑中的「收藏夹」信息&…

包含的前缀数目超过了最大值。最大值为 2_动画 | 什么是红黑树?(基于2-3树)...

学习过2-3树之后就知道应怎样去理解红黑树了&#xff0c;如果直接看「算法导论」里的红黑树的性质&#xff0c;是看不出所以然。我们也看看一颗二分搜索树满足红黑的性质&#xff1a;1.每个节点或是红色的&#xff0c;或是黑色的&#xff1b;2.根节点是黑色的&#xff1b;3.每个…

Spring Cloud Config 加密和解密

2019独角兽企业重金招聘Python工程师标准>>> 要使用加密和解密功能&#xff0c;您需要在JVM中安装全面的JCE&#xff08;默认情况下不存在&#xff09;。您可以从Oracle下载“Java加密扩展&#xff08;JCE&#xff09;无限强度管理策略文件”&#xff0c;并按照安装…