精华内容
下载资源
问答
  • 第一种:单柱状图 效果图如下: 操作方法: ———————————————————————————— 第二种:双柱状图 效果图: 解决方法: ...

    第一种:单柱状图
    效果图如下:
    这里写图片描述
    操作方法:
    这里写图片描述
    注意: //alert(JSON.stringify(params));可以查看都包含哪些属性
    ————————————————————————————
    第二种:双柱状图
    效果图:
    这里写图片描述
    解决方法:
    这里写图片描述
    如果你热爱技术,追求不断进步,可以关注博主微信公众号哦,会不断推送高质量的技术文章
    在这里插入图片描述

    展开全文
  •  原生JavaScript柱状图数据是通过ajax从后端php代码中获取。  如果有的柱子颜色是白色,就多点几次按钮。 效果图: 代码: 前端html,css,js代码 /*整个显示柱状图的区域的高度...

    解释:

       原生JavaScript做的柱状图,数据是通过ajax从后端php代码中获取。

       如果有的柱子颜色是白色,就多点几次按钮。

    效果图:


    代码:

    前端html,css,js代码
    <!doctype html>
    <html>
    	<head>
    		<title></title>
    		<meta charset = "utf-8"/>
    	</head>
    <style type="text/css">
    
    /*整个显示柱状图的区域的高度的是500px;每个柱子的宽是50px;每个柱子的间隔是:50px;第一个柱子的left是100px;*/
    *{
    	margin:0px;
    	padding:0px;
    }
    #box{
    	width:800px;
    	height:500px;
    	border-bottom:solid 2px black;
    	position:relative;
    }
    
    </style>
    
    <body>
    	<input id="btn" type="button" value="显示销售数据" />
    	<div id="box">
    		
    	</div>
    </body>
    </html>
    <script type="text/javascript">
    
    //编写函数获得随机的颜色字符串(#20cd4f)
    function getColor(){
    	//分别随机r g b的值
    	var r = parseInt(Math.random()*256);
    	var g = parseInt(Math.random()*256);
    	var b = parseInt(Math.random()*256);
    	return "#"+r.toString(16)+g.toString(16)+b.toString(16);
    }
    
    
    //ajax请求的封装
    //参数:
    // 请求方式: 字符串类型
    // url: 字符串类型
    // 是否异步:boolean类型
    // 请求参数:字符串类型
    // 回调函数
    
    //返回值:无
    function ajax1708(method,url,paramStr,isAsync,callback){
    	//1、创建对象
    	let xhr = new XMLHttpRequest();		
    	//2、设置请求参数
    	let urlStr = url;
    	if(method.toLowerCase()=="get" && paramStr!=""){
    		urlStr+="?"+paramStr;
    	}
    	xhr.open(method,urlStr,isAsync);		
    	//3、设置回调函数
    	xhr.onreadystatechange = function(){
    		if(xhr.readyState==4 && xhr.status==200){
    			if(callback!=null){
    				callback(xhr.responseText);	
    			}			
    		}
    	}
    
    	//4、发送请求
    	if(method.toLowerCase()=="post"){
    		xhr.setRequestHeader("Content-type","application/x-www-form-urlencoded");
    		xhr.send(paramStr);
    	}else{
    		xhr.send();
    	}
    	
    }
    
    function getData(){
    	ajax1708("get","getSaleMoney.php","",true,function(str){
    		let data = JSON.parse(str);
    		showTotal(data);
    	});
    }
    
    //计算最大金额
    function getMaxMoney(data){
    	let maxMoney = data[0].money;
    	for(let i in data){
    		if(data[i].money>maxMoney){
    			maxMoney = data[i].money;
    		}
    	}
    	return maxMoney;
    }
    
    function showTotal(data){
    	//1、明确最大高度和最大金额
    	let maxWidth = 800;
    	let maxHeight = 450;
    	let maxMoney = getMaxMoney(data);
    	//2、计算比例(一万元多少像素)
    	percent = maxHeight/maxMoney;
    	
    	//3、柱子之间的间隔和柱子的宽度(假定柱子的间隔和宽度是一样的)
    	let space = maxWidth/(data.length*2+1);
    	let width = space;
    	
    	//循环所有的数据产生柱状图
    	for(let i=0;i<data.length;i++){
    		//1、创建大div(包着金额,颜色柱子,年份)
    		let bigPillarDom = document.createElement("div");
    		let left = (i+1)*space+i*width;
    		bigPillarDom.style.cssText="position:absolute;left:"+left+"px;bottom:-20px;width:50px;";
    		$("box").appendChild(bigPillarDom);
    		//2、创建年份,颜色柱子,金额对应dom元素。
    		//1)、创建金额的span
    		let spanMoneyDom = $create("span");
    		spanMoneyDom.style.cssText = "text-align:center;width:"+width+"px;display:block;";
    		spanMoneyDom.innerHTML = data[i].money+"万";
    		bigPillarDom.appendChild(spanMoneyDom);
    		//2)、创建颜色柱子的div
    		let divColorDom = $create("div");
    		divColorDom.style.width=width+"px";
    		divColorDom.style.height=(data[i].money*percent)+"px";
    		divColorDom.style.backgroundColor= getColor();
    		bigPillarDom.appendChild(divColorDom);
    		//3)、创建年份的p
    		let pYearDom = $create("p");
    		pYearDom.innerHTML = data[i].year;
    		pYearDom.style.cssText ="height:20px;text-align:center;";
    		bigPillarDom.appendChild(pYearDom);
    	}
    }
    
    function $(id){
    	return document.getElementById(id);
    }
    
    
    function $create(tagName){
    	return document.createElement(tagName);
    }
    
    
    window.onload = function(){
    	$("btn").onclick = getData;
    }
    
    </script>

    php代码:getSaleMoney.php

    <?php
    	
    	$str='[
    	{
    		"year":"2011",
    		"money":200
    	},
    	{
    		"year":"2012",
    		"money":600
    	},
    	{
    		"year":"2013",
    		"money":580
    	},
    	{
    		"year":"2014",
    		"money":300
    	},
    	{
    		"year":"2015",
    		"money":800
    	},
    	{
    		"year":"2016",
    		"money":1000
    	},
    	{
    		"year":"2017",
    		"money":1500
    	},
    	{
    		"year":"2018",
    		"money":2500
    	},
    	{
    		"year":"2019",
    		"money":3500
    	}
    ]';
    	echo $str;
    ?>
    展开全文
  • 根据已知数据自定义柱状图

    如有错误,还望指出~~

    一、效果

    这里写图片描述

    二、说明

    • 需要注意的是外层一定要设置高宽,因为柱状图是根据百分比来生成的
    • 因为是百分比,所以会自适应屏幕
    • 柱型的多少根据arr.length来做的判断
    • 每个柱状的颜色,效果都可以在js里面做调整
    • 恩,上面都在说废话

    三、代码

    • html:
    <body>
        <div class="box">
            <div class="main">
            // 这里的span标签最好还是根据arr.length用js来动态生成
                <span></span>
                <span></span>
                <span></span>
                <span></span>
                <span></span>
                <span></span>
                <span></span>
                <span></span>
                <span></span>
                <span></span>
                <span></span>
                <span></span>
                <span></span>
                <span></span>
                <span></span>
                <span></span>
                <span></span>
                <span></span>
                <span></span>
                <span></span>
                <span></span>
                <span></span>
                <span></span>
                <span></span>
                <span></span>
                <div class="mask">
                    <i></i>
                    <i></i>
                    <i></i>
                </div>
            </div>
        </div>
    <body>
    • css
    .box{
        position: absolute; 
        top: 50%;
        left: 50%;
        transform: translate(-50%, -50%);
        width: 100%;
    }
    
    .main{
        position: relative;
        display: flex;
        align-items: flex-end;
        width: 95%;
        height: 400px;
        margin: 0 auto;
        font-size: 0;
        padding: 0;
    }
    
    .main span {
        width:4%;
        height: 0;
        border-right: 4px solid;
        transition: height 1s ease-in-out;
    }
    
    /*.mask{
        position: absolute;
        bottom: 0;
        height: 100%;
        width: 100%;
        z-index: -1
    }
    .mask i {
        display: inline-block;
        height: 100%;
        opacity: .5;
    }
    
    .mask i:nth-child(1) {
        background-color: #ccc;
    }
    .mask i:nth-child(2) {
        background-color: #999;
    }
    .mask i:nth-child(3) {
        background-color: #555;
    }*/
    • jq
    $(document).ready(function () {
        // 此处为自定义的数据
        var arr = [20, 30, 40, 45, 60, 80, 90, 110, 150, 130, 70, 120, 140, 90, 70, 80, 50, 110, 140, 120, 60, 50, 40, 30, 20]
        var maxH = 0
        var line = $('.main span')
        var mask = $('.mask i')
        for (var i=0; i<arr.length; i++) {
            if (arr[i] > maxH) {
                maxH = arr[i];
            }
        }
        // react里面用map,参数是m在前i在后
        line.map(function(i, m){
            if (i<12){   
                $(m).css({'background-color': '#ccc','border-color': '#fff'})
                $(mask).eq(0).css('width', (12 * 4) + '%') 
            } else if (i<10) {
                $(m).css({'background-color': '#ccc','border-color': '#fff'})
                $(mask).eq(1).css('width', (10 * 4) + '%')
            } else {
                $(m).css({'background-color': '#ccc','border-color': '#fff'})
                $(mask).eq(2).css('width', (3 * 4) + '%')
            }
    
            var averH = arr[i] / maxH * 100 + '%'
            setTimeout(function() {
                $(m).css('height', averH)
            }, 500);
        })
    })
    展开全文
  • highcharts的柱状图显示数据

    千次阅读 2018-10-15 17:33:36
    默认情况highcharts柱形上点击后才显示y数据。 添加plotOptions对应的属性plotOptions设置。 plotOptions :{ column: { pointPadding: 0.2, borderWidth: 0, dataLabels: { enabled: true //设置显示对应y的值 }...

    Highcharts图表上显示数据

    默认情况highcharts柱形图上点击后才显示y数据。 添加plotOptions对应的属性plotOptions设置。

    plotOptions :{
    column: { pointPadding: 0.2, borderWidth: 0, dataLabels: { enabled: true //设置显示对应y的值 } } }

    代码如下

    var options2 = {
    		chart: {
    			type: 'column'                          //指定图表的类型,默认是折线图(line)
    		},
    		title: {
    			text: ''                 // 标题
    		},
    		xAxis: {
    			categories:  ['一月', '二月', '三月','四月', '五月', '六月','七月', '八月', '九月','十月', '十一月', '十二月']  // x 轴分类
    		},
    		plotOptions :{   
    			column: {
     		        pointPadding: 0.2,
     		        borderWidth: 0,
     		        dataLabels: {
     		            enabled: true //设置显示对应y的值
     		        }
     		    }
    		},
    		yAxis: {
    			title: {
    				text: '采购金额(万元)'                // y 轴标题
    			}
    		}
    		,
    		series: [{                              // 数据列
    			name: '年度',                        // 数据列名
    			data: [1,4,4,1,3,6,1,0,6,1,2,4]      // 数据               
    		}]
    	};
    
    // 图表初始化函数
    	var chart2 = Highcharts.chart('div_chart2', options2);
    	
    
    	<div id="div_chart2" style="width: 100%; height: 400px; min-width:400px;margin: 0px;padding: 0px;">
    	   		</div>

     

     

    效果对比如下

    一不加plotOptions属性的

    二plotOptions的column的dataLabels的enabled: true 时候显示柱状的值

     

    展开全文
  • 如图 (https://img-ask.csdn.net/upload/201607/09/1468053459_192143.png) 把结果里的数据做柱状图 求大神解析,求完整代码
  • Highcharts柱状图动态数据展示

    千次阅读 2017-07-18 12:26:59
    Highcharts柱状图动态数据展示: Highcharts Example //首次访问自动加载本期保费、同期保费、增量保费柱状图 $(document).ready(function(){ $.post('...
  • Python 柱状图数据标签

    千次阅读 2019-08-05 14:00:07
    文章目录导入数据 导入数据 import numpy as np```
  • 首先在Excel模板上10行数据,选中这10行数据,插入柱状图,那么这个柱状图的透视表就是这10行数据,java后台填充模板这10行数据实现柱状图数据的变更,但是如果后台数据超过10行,怎样让Excel的透视表也相应的...
  • 用python 分析表格数据,并绘制成柱状图, 让大家感受一下用python来绘制图表是一种什么感觉。 这是我们今天要分析的表格数据:表格名称为test.xlsx,分为两列,一列是包含姓名信息,一列是包含年龄信息 1、首先...
  • 柱状图数据可视化需求中的一种常见图表形式,当数据量大的时候,我们还会期望柱状图可以左右滑动。这里可以通过配置echarts的柱状图数据区域缩放组件dataZoom来完成我们的需求。下面是完成后的效果动态图(鼠标移...
  • 关于echarts柱状图动态数据渲染

    千次阅读 2020-01-08 15:15:37
    前端柱状图动态数据渲染 HTML代码 <div class="col-sm-6 select-table table-striped table-bordered"> <div id="echarts" style="width:820px;height: 540px;"></div> </div&g...
  • 柱状图数据0不显示

    千次阅读 2017-07-19 08:53:08
    柱状图数据0不显示
  • ECharts 更新柱状图数据

    千次阅读 2017-01-16 11:49:59
    ECharts 更新柱状图数据最近使用Echarts的时候,想要先加载出图表的大概框架样式,再加载数据,之后再定时刷新数据,这样就不用每次重新加载样式,减轻浏览器负担。 之前像pie类型都可以先initOption,再setData...
  • 下面是我封装的一个用来把数据格式转换为Echarts柱状图所需要数据的方法。 /** * 封装了一个用于生成前端柱状图对应数据结构所需数据的方法 * * @author sueyun * */ public class CreateBarDataUtil {...
  • 微信小程序中使用柱状图展示数据

    千次阅读 2019-09-17 15:00:19
    code_w: code_w, //柱状图的宽 code_h: code_h //柱状图的高 }, onLoad: function (options) { this.charts() }, charts:function(){ let _this=this return new Promise(function () { new Charts({ ...
  • QtChart是qt自带绘制图表的模块。其用法的一些关键点...官方文档只有数据写死的demo,这里记录一下柱状图加载动态数据的实现方式。 先上代码 import QtQuick 2.0 import QtCharts 2.3 Item { ChartView { ...
  • R语言做柱状图

    万次阅读 2016-11-29 10:15:16
    R语言做柱状图 转自:http://www.phperz.com/article/16/0102/180120.html 条形图代表在与条成比例的变量的值的长度矩形条数据。R使用函数barplot()来创建柱状图。R能够绘制柱状图垂直和水平条。在柱状图中每...
  • 在使用echarts柱状图时,如果数据过多,图的显示不会那么直观,有的横坐标会被隐藏,如下图所示: 想实现可以通过横向滚动条拖动展示数据,看了官方文档,实现的效果如下 具体代码:就是添加这个代码就可以了 ...
  • bar_label()函数是matplotlib3.4.0新增API,功能是为柱状图添加数据标签。 函数的签名为matplotlib.pyplot.bar_label(container, labels=None, *, fmt='%g', label_type='edge', padding=0, **kwargs)。 函数的参数...
  • JAVA代码获取柱状图数据

    千次阅读 2018-07-05 23:51:33
    //获取柱状图数据的方法 public OrderMoneyNumVo getOrderMoneyCount(Integer siteNumber) { //柱状图参数实体类 OrderMoneyNumVo orderMoneyNumVo = new OrderMoneyNumVo(); ArrayList&lt;String&gt; ...
  • 项目最终效果图: 此篇博客为自己学习pink老师的课后完成的项目的总结与记录,仅供交流参考。版权所有,转载请标注原...文章目录动态三维柱状图三维柱状图数据存储柱状图配置tooltip配置xAxis3D配置yAxis3D配置zAxi.
  • 柱状图图标显示数据

    千次阅读 2018-05-07 17:35:42
    https://code.hcharts.cn/demos/hhhhDz可以参考这个例子叠加柱状图
  • 数据生成柱状图

    千次阅读 2018-06-08 15:50:42
    需求:将汇总的数据生成柱状图#coding:utf-8 import xlrd import xlwt def all_list(arr): """获取所有元素的出现次数,使用list中的count方法""" result = {} for i in set(arr):...
  • 先放效果图~~这是原始页面这是鼠标移上去的样子这是鼠标离开之后的样子总之呢,就是给他俩弄一个联动的效果,移入柱状图,地图跟着动起来,并且数据跟着变。柱状图后台数据库:地图后台数据库:思路大概是这样的:当...
  • Android 使用GraphicalView画出的柱状图如何在滑动时加载更多数据,因为数据比较多,希望能够在有需求时滑动再加载更多数据
  • 前言  百度的echarts是一款开源软件,为我们提供了漂亮的图形...问题如下,只显示了折线图,用电负荷(柱状图)是有数据的但未显示,原因是数据量过大无法渲染出来,并且在拖动时会卡顿: 1.在html中引入echarts,并为echart
  • 在echarts图表展示时,有时会遇到数据量差距过大的情况,过...柱状图、折线图之类的可以使用log轴设置:type: 'log' yAxis: { type: 'log', }, 饼图可以采用minAngle来防止某个值过小导致扇区太小影响交互。 ...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 60,958
精华内容 24,383
关键字:

做柱状图怎么选择数据