IT数码 购物 网址 头条 软件 日历 阅读 图书馆
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
图片批量下载器
↓批量下载图片,美女图库↓
图片自动播放器
↓图片自动播放器↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁
 
   -> JavaScript知识库 -> 用ECharts生成统计图 -> 正文阅读

[JavaScript知识库]用ECharts生成统计图

???????????????用ECharts生成统计图

这是我的HTML部分:

??<div?class="layui-fluid"?style="font-size:16px">

????????@*?列间距15 layui-col-space15 ?*@

????????<div?class="layui-row layui-col-space15">

????????????<div?class="layui-col-md12">

????????????????<div?class="layui-col-md6">

????????????????????<div?class="layui-card"?style="height:500px;">

????????????????????????<div?class="layui-card-header"?style="font-size:16px;">

????????????????????????????<i?class="layui-icon layui-icon-group">图书馆书本销量合计</i>

????????????????????????</div>

????????????????????????<div?class="layui-card-body">

????????????????????????????<div?id="main"?style="width:600px;height:500px"></div>

????????????????????????</div>

????????????????????</div>

????????????????</div>

????????????????<div?class="layui-col-md6">

????????????????????<div?class="layui-card"?style="height:500px">

????????????????????????<div?class="layui-card-header"?style="font-size:16px">

????????????????????????????<i?class="layui-icon layui-icon-chart">书本销量整合统计</i>

????????????????????????</div>

????????????????????????<div?class="layui-card-body">

????????????????????????????<div?id="tmain"?style="width:95%;height:450px"></div>

????????????????????????</div>

????????????????????</div>

????????????????</div>

????????????</div>

????????</div>

????</div>

????

这里面有两个统计图,一个是扇形统计图,一个是柱形图;

这两个图都是通过echarts这个插件形成的;

这是echarts的网站:https://echarts.apache.org/examples/zh/index.html#chart-type-radar

首先你如果要使用ECharts那在你使用之前前先通过script标签引入构建好的echarts文件;

在绘图前我们要为ECharts准备一个具备高宽的DOM容器,

如上图中的:<div?id="main"?style="width:600px;height:500px"></div>??与?<div?id="tmain"?style="width:95%;height:450px"></div>

这两个标签一个是为扇形统计图的DOM容器一个是柱形图的DOM容器;

在上述的几步完成之后通过echarts.init方法初始化一个echarts实例并通过setOption方法生成图形;

下面这行代码是我的javascript部分;

?$.getJSON("inquire", function?(data) {

????????console.log(data);

????????MEAG(data);

????})

????setBzhuy();

????function?MEAG(data) {

????????var?mainCh = echarts.init(document.getElementById("main")); ?//通过echarts.init方法初始化一个echarts实例

????????option = {

????????????title: {

????????????????text: '图书管理系统',

????????????????subtext: '书本销量统计图',

????????????????left: 'center'

????????????},

????????????tooltip: {

????????????????trigger: 'item'//trigger提示框组件;数据项图形触发,主要在散点图,饼图等无类目轴的图表中使用。

????????????????//axis:坐标轴触发,主要在柱状图,折线图等会使用类目轴的图表中使用。

????????????????//none:什么都不触发。

????????????},

????????????legend: {

????????????????orient: 'vertical',//图例列表的布局朝向。

????????????????//图例标记和文本的对齐。默认自动,根据组件的位置和 orient 决定,当组件的 left 值为 'right' 以及纵向布局(orient 为 'vertical')的时候为右对齐,即为 'right'。

????????????????left: 'left',

????????????},

????????????series: [//图例的数据数组,数组项通常为一个字符串,每一项代表一个系列的 name(如果是饼图,也可以是饼图单个数据的 name)。

????????????????{

????????????????????name: '图书管理系统',//数据项名称。

????????????????????type: 'pie',

????????????????????radius: '50%',//'radius' 扇区圆心角展现数据的百分比,半径展现数据的大小。

????????????????????data: data,

????????????????????emphasis: {//高亮状态的扇区和标签样式。

????????????????????????itemStyle: {

????????????????????????????shadowBlur: 10,

????????????????????????????shadowOffsetX: 0,

????????????????????????????shadowColor: 'rgba(0, 0, 0, 0.5)'

????????????????????????}

????????????????????}

????????????????}

????????????]

????????};

????????// 使用刚指定的配置项和数据显示图表。

????????mainCh.setOption(option);

????}

????

????function?setBzhuy(data) {

????????//基于准备好的dom,初始化echarts实例;

????????var?myChat = echarts.init(document.getElementById("tmain"))

????????//设置为同步 $.ajaxSettings.asyn=false;

????????$.ajaxSettings.async = false;

????????var?typeN;

????????var?nameM ;

????????$.getJSON("Booktype", function?(data) {

????????????typeN = data; //这是图书类型

????????????console.log(typeN);

????????})

????????$.getJSON("BookNumber", function?(data) {

????????????nameM = data//这是各类型图书数

????????????console.log(nameM);

????????})

???????

????????option = {

????????????xAxis: {

????????????????type: 'category',

????????????????data: typeN

????????????????, axisLabel: {

????????????????????interval: 0//解决隔一个显示一个问题。(原理:该属性设置成0则表示强制显示所有标签,设置为1的话,隔一个标签显示一个标签)

????????????????}

????????????},

????????????yAxis: {

????????????????type: 'value'

????????????},

????????????

????????????series: [{

????????????????data: nameM,

????????????????type: 'bar',

????????????????showBackground: true,

????????????????backgroundStyle: {

???????????????????color: 'rgba(180, 180, 180, 0.2)'

???????????????}

????????????}]

????????}

????????myChat.setOption(option);

????}

????

</script>

这上面的通过getJSON获取的是我数据库中的数据 ;

这是我的页面效果:

如图:

?

  JavaScript知识库 最新文章
ES6的相关知识点
react 函数式组件 & react其他一些总结
Vue基础超详细
前端JS也可以连点成线(Vue中运用 AntVG6)
Vue事件处理的基本使用
Vue后台项目的记录 (一)
前后端分离vue跨域,devServer配置proxy代理
TypeScript
初识vuex
vue项目安装包指令收集
上一篇文章      下一篇文章      查看所有文章
加:2021-08-28 08:56:16  更:2021-08-28 08:57:02 
 
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁

360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年12日历 -2024/12/27 5:42:06-

图片自动播放器
↓图片自动播放器↓
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
图片批量下载器
↓批量下载图片,美女图库↓
  网站联系: qq:121756557 email:121756557@qq.com  IT数码
数据统计