博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
Highcharts入门(一)
阅读量:5246 次
发布时间:2019-06-14

本文共 2789 字,大约阅读时间需要 9 分钟。

Highcharts  是一个JS图表库,官方网站:

示例一:通过ajax请求获取json数据,然后通过  Highcharts   展示出来,部分代码如下:

下面前台HTML代码 :

<
div 
id
="divMain"
 
>
        
<
div 
id
="divContainer"
 style
="min-width: 400; width:90%; min-height: 380px; margin: 0 auto"
>
        
</
div
>

 </div> 

 

下面是JS代码: 

function query() {
    
if (!checkBeforeQuery()) {
        
return 
false;
    }
    
var gChart;
    
var reqUrl = "/Sale/Product";
    
//
部门编码
    
var vDeptCode = jddlProductDept.find("option:selected").text();
    
//
产品编码
    
var vLineCode = jddlProductLine.find("option:selected").text();
    
if (vLineCode == "请选择") {
        vLineCode = "";
    }
    
//
款式编码
    
var vStyleCode = jtxtStyle.attr("code");
    
//
产品编码
    
var vProductCode = jtxtProduct.attr("code");
    
//
商品编码
    
var vSkuId = jtxtSKU.attr("code");
    
var vQueryDate = jdtQueryBeginDate.val();
    
var vExecDate = jdtExecBeginDate.val();
    $.wmspost({
        url: reqUrl,
        async: 
false,
        data: { deptCode: vDeptCode, lineCode: vLineCode, styleCode: vStyleCode,
            productCode: vProductCode, skuId: vSkuId,
            queryDate: vQueryDate, execDate: vExecDate
        },
        success: 
function (retData) {
            fillGrid(retData);
            
var arrCategory = []; 
//
月份
            
var arrSjxl = []; 
//
实际销量
            
var arrSjcxl = []; 
//
实际促销量
            $.each(retData, 
function (idx, item) {
                arrCategory.push(item.PredictedDate.substring(0, item.PredictedDate.lastIndexOf("/")));
                arrSjxl.push(item.ActualQty);
                arrSjcxl.push(item.PromotionQty); 
//
            });
            
//
divContainer 是div的id,该div用来显示图表
            
var vOption = createChartOption("divContainer", "line", "部门销售统计", 
null, "月份", "销量(件)");
            
//
X轴
            $.each(arrCategory, 
function (idx, item) {
                vOption.xAxis.categories.push(item);
            });
            
//
实际销量
            vOption.series.push(createSeries(arrSjcxl, "实际销量", "square"));
            
//
实际促销量
            vOption.series.push(createSeries(arrSjcxl, "实际促销量", "triangle"));
            
//
创建图表
            gChart = 
new Highcharts.Chart(vOption);
        },
        error: 
function (xhrObj, textStatus, errObj) {
        }
    });
}
function createSeries(arrData, seriesName, seriesSymbol) {
    
var objSeries = {
        name: seriesName,
        data: [],
        marker: {
            symbol: seriesSymbol
        }
    };
    $.each(arrData, 
function (idx, item) {
        objSeries.data.push(item);
    });
    
return objSeries;
}
function createChartOption(pRenderId,chartType,mainTitle,subTitle, xAxisTitle,yAxisTitle) {
    
var vOption = {
        chart: {
            renderTo: pRenderId,
            type: chartType,
            marginRight: 130,
            marginBottom: 25
        },
        title: {
            text: mainTitle
        },
        subtitle: {
            text: subTitle
        },
        xAxis: {
            title: {
                text: xAxisTitle
            },
            categories: []
        },
        yAxis: {
            title: {
                text: yAxisTitle
            },
            plotLines: [{
                value: 0,
                width: 1,
                color: "#808080"
            }]
        },
        tooltip: {
            crosshairs: 
true,
            shared: 
true
        },
        legend: {
            layout: "vertical",
            align: "right",
            verticalAlign: "top",
            x: -10,
            y: 100,
            borderWidth: 0,
            floating: 
true
        },
        plotOptions: {
            series: {
                cursor: "pointer",
                point: {
                    events: {
                        click: 
function () {
                            alert(
this.series.name + "=" + 
this.x + "=" + 
this.y);
                        }
                    }
                }
            }
        },
        series: []
    };
    
return vOption;

转载于:https://www.cnblogs.com/imap/archive/2012/07/18/2597789.html

你可能感兴趣的文章
一些感想———写在面完腾讯之后
查看>>
1.冒泡排序法
查看>>
宽字符转窄字符CW2AEX<>(szAreaInfo,CP_UTF8)
查看>>
Component Art UI Framework
查看>>
EF终于也有了IDbContextFactory
查看>>
安装 protobuf
查看>>
NSUserDefaults无法保存数据<转>
查看>>
Java EJX
查看>>
cas原理简介
查看>>
并发、并行、同步、异步、多线程的区别
查看>>
[实践]使用JarJar优雅的发布依赖包
查看>>
[置顶] 三五杆枪,可干革命,三五个人,可以创业
查看>>
getElementByName()和getElementById的区别
查看>>
存储过程转账
查看>>
C#中 从本地DataTable中 查询符合条件的数据
查看>>
音乐之声
查看>>
ppt点击文字出现图片,再次点击消失
查看>>
【转】Eclipse 常用快捷键 (动画讲解)
查看>>
Centos7配置ThinkPHP5.0完整过程(一)
查看>>
修改C#mvc的默认首页
查看>>