📜  QlikView-仪表板(1)

📅  最后修改于: 2023-12-03 15:34:34.098000             🧑  作者: Mango

QlikView 仪表板

QlikView 是由 QlikTech 开发的一款商业数据可视化和商业智能(BI)工具。QlikView 允许用户从多个数据源中获取数据,提供了高级数据分析能力和仪表板制作工具,以便用户进行更好的决策。

优势
  • 易于使用和理解: QlikView 由于采用了直观的用户界面和数据可视化方式,因此让使用者更易于学习、理解和使用数据分析。

  • 快速的数据分析: QlikView 可以在大量的数据中快速地找到有用的信息。其出色的内存管理和数据压缩技术让用户可以在几秒钟内完成对万亿级别数据的处理工作。

  • 快速的部署: QlikView 的数据可视化工具是一种基于前端 Web 技术的软件。因此不需要任何专业的IT人员进行部署和维护。此外,QlikView 标准版为一种桌面应用程序,具有快速安装、便捷升级等优点。

  • 灵活的动态仪表板: QlikView 可以快速地生成交互式和动态可视化报表。并且界面清新、配色搭配协调,使得数据呈现的更精美美观。

开发技术
  • QlikView 编程语言: QlikView 编程语言基于 VBScript 语言,它使用与 Microsoft Office 套件中的宏语言相同的语法。

  • QlikView 开发工具: QlikView 开发工具名为 QlikView 开发者(QlikView Developer),它提供了一套实用的数据探查和分析工具。

  • QlikView 数据源: QlikView 支持的数据源非常丰富,包括 SQL 数据库、Oracle 数据库、SAP 等常用的数据库系统。此外,它还支持多种非关系型数据库,如 XML、CSV以及 QVD(QlikView 数据)文件。

示例

以下是一个简单的 QlikView 仪表板示例代码,它可以显示产品的销售数据。

// 加载数据集
SalesData:
LOAD [Product ID],
     [Sales Amount],
     [Sales Quantity],
     [Sales Date],
     [Product Name]
FROM \\server\data\sales.qvd
(qvd);

// 创建数据表格
SalesDataTable:
LOAD [Product ID],
     [Product Name],
     [Sales Date],
     [Sales Amount],
     [Sales Quantity],
     'Product_Sales' as ChartType
Resident SalesData;

// 创建饼图
ProductSales:
LOAD [Product ID],
     Sum([Sales Amount]) as [Total Sales Amount]
Resident SalesData;

// 创建柱状图
ProductSalesByMonth:
LOAD Month([Sales Date]) as [Month],
     Year([Sales Date]) as [Year],
     Sum([Sales Amount]) as [Total Sales Amount]
Resident SalesData;

// 显示数据
// 数据表格
DataTable:
LOAD [Product ID],
    [Product Name],
    [Sales Date],
    [Sales Amount],
    [Sales Quantity]
Resident SalesData;

// 饼图
ProductSales:
LOAD [Product ID],
     Sum([Sales Amount]) as [Total Sales Amount]
Resident SalesData;

// 柱状图
ProductSalesByMonth:
LOAD Month([Sales Date]) as [Month],
     Year([Sales Date]) as [Year],
     Sum([Sales Amount]) as [Total Sales Amount]
Resident SalesData;

// 输出仪表板
// 数据表格
$( document ).ready(function() {
    console.log( "ready!" );
    $( "#dataTable" ).DataTable({
        data: $(SalesDataTable).DataTable({
            responsive: true,
            columns: [
                { data: "Product ID" }, 
                { data: "Product Name" },
                { data: "Sales Date" },
                { data: "Sales Amount" },
                { data: "Sales Quantity" }
            ]
        }).data()
    });
});
   
// 饼图
$( document ).ready(function() {
    console.log( "ready!" );
    $( "#productSales" ).highcharts({
        chart: {
            plotBackgroundColor: null,
            plotBorderWidth: null,
            plotShadow: false,
            type: 'pie'
        },
        title: {
            text: 'Product Sales'
        },
        tooltip: {
            pointFormat: '{series.name}: <b>{point.y:.1f}</b>'
        },
        plotOptions: {
            pie: {
                allowPointSelect: true,
                cursor: 'pointer',
                dataLabels: {
                    enabled: true,
                    format: '<b>{point.name}</b>: {point.y:.1f}'
                }
            }
        },
        series: [{
            name: 'Product',
            colorByPoint: true,
            data: $(ProductSales).DataTable({
                columns: [
                    { data: "Product ID" }, 
                    { data: "Total Sales Amount" }
                ]
            }).data()
        }]
    });
});
   
// 柱状图
$( document ).ready(function() {
    console.log( "ready!" );
    $( "#productSalesByMonth" ).highcharts({
        chart: {
            type: 'column'
        },
        title: {
            text: 'Monthly Sales'
        },
        xAxis: {
            categories: $(ProductSalesByMonth).DataTable({
                columns: [
                    { data: "Month" }, 
                    { data: "Year" },
                ]
            }).data(),
            crosshair: true
        },
        yAxis: {
            min: 0,
            title: {
                text: 'Sales'
            }
        },
        tooltip: {
            headerFormat: '<span style="font-size:10px">{point.key}</span><table>',
            pointFormat: '<tr><td style="color:{series.color};padding:0">{series.name}: </td>' +
                '<td style="padding:0"><b>{point.y:.1f}</b></td></tr>',
            footerFormat: '</table>',
            shared: true,
            useHTML: true
        },
        plotOptions: {
            column: {
                pointPadding: 0.2,
                borderWidth: 0
            }
        },
        series: [{
            name: 'Sales',
            data: $(ProductSalesByMonth).DataTable({
                columns: [
                    { data: "Total Sales Amount" }
                ]
            }).data()
        }]
    });
});
总结

QlikView 是一个交互式的数据可视化平台,它不仅可以快速地获取和分析各种类型和来源的数据,而且为决策者和数据分析员提供了一个自定义和动态的仪表板,帮助他们更好地了解和处理数据,以便做出更好的商业决策。