关闭 x
IT技术网
    技 采 号
    ITJS.cn - 技术改变世界
    • 实用工具
    • 菜鸟教程
    IT采购网 中国存储网 科技号 CIO智库

    IT技术网

    IT采购网
    • 首页
    • 行业资讯
    • 系统运维
      • 操作系统
        • Windows
        • Linux
        • Mac OS
      • 数据库
        • MySQL
        • Oracle
        • SQL Server
      • 网站建设
    • 人工智能
    • 半导体芯片
    • 笔记本电脑
    • 智能手机
    • 智能汽车
    • 编程语言
    IT技术网 - ITJS.CN
    首页 » PHP »PHP创建一个炫酷的图表的方法分享

    PHP创建一个炫酷的图表的方法分享

    2017-11-06 21:06:13 出处:IT技术网
    分享

    不管有多少服务器端语言出现,没有谁能够取代PHP。至少是不久的将来都不可能。 PHP还有许多最著名的web应用程序的支柱。

    如果你是一个后端开发人员,并且PHP是你技术堆栈的一部分,那么你会发现本教程非常有用。在这篇文章中,我将讲解如何一步一步使用PHP,FusionCharts的核心JavaScript图表库,以及它的PHP图表包装程序创建漂亮的图表。

    下面就是我们今天要完成的目标图表

    有四个步骤:

    • 步骤0:准备数据
    • 步骤1:引用JS和PHP文件
    • 步骤2:创建图表对象
    • 步骤3:渲染图表

    步骤0:准备数据

    由于需要在计划对数据可视化之前,先准备好数据,所以我叫这一步为步骤0,而非步骤-1。

    FusionCharts既理解XML,也理解JSON数据格式,不过在本教程中,我们只用JSON。我们将通过转换以下数据为FusionCharts认可的JSON键值来启动我们的教程。

    月份 收入
    Oct 490000
    Nov 900000
    Dec 730000

    下面是上述数据的JSON表示:

    [
        {"label": "Oct", "value": "490000"},
        {"label": "Nov", "value": "900000"},
        {"label": "Dec", "value": "730000"}
    ]

    我们将使用上述数据绘制条形图,并格式化我们的行为。对于其他图表类型,可能会有点复杂。

    步骤1:引用依赖性

    在这一步中,我们将包括FusionCharts的核心JavaScript库和PHP图表包装程序。

    具体是这样做到的:

    <? php
    // including FusionCharts PHP wrapper
        include(path/to/fusioncharts.php);
    ?>
    <head>
        <!-- FusionCharts core package files -->
        <script type="text/javascript" src="path/to/fusioncharts.js"></script>
    </head>

    步骤2:创建图表对象

    这一步我们要使用FusionCharts的PHP包装程序类为我们的图表 $coolChart 创建一个对象。创建图表对象的语法如下:

    $objectName = new FusionCharts("chart type",
                  "unique chart ID",
                  "Chart Width",
                  "Chart Height",
                  "HTML Element for Chart",
                  "Chart Data Format",
                  "Data Source");

    下面的图表对象用于我们要在本教程中创建的图表:

    $coolChart = new FusionCharts("bar2d", "myCoolPHPChart", "100%", "600",
                   "barchart-container", "json",
                   '{
                    "chart": {
                        "caption": "Monthly revenue for Q4 - 2015",
                        "xAxisName": "Month",
                        //Other Chart Options
                    },
                    "data": [{
                        "label": "Oct",
                        "value": "490000"
                    } //More Chart Data
                }');

    上述语法中提到的“Data Source”包含两个对象:

    图表对象:包括负责图表交互性和装饰的各种属性。它们中的一些说明如下:

    • showHoverEffect:(布尔型),用于启用或禁用图表中的悬停效果。
    • plotFillHoverColor:(十六进制代码/颜色名称)用来定义鼠标悬停的曲线颜色。
    • plotFillHoverAlpha:(整型)用于定义悬停颜色的透明度。
    • baseFont:(字符串)用于定义图表的字体类型。
    • baseFontSize:(整型)用于设置图表的字体大小。
    • baseFontColor:(十六进制代码/颜色名称)用于设置图表的字体颜色。

    数据对象:包括用于每个数据图的标签和它们相应的值。可以被添加到数据对象内的其它属性是:

    • displayValue:(字符串)允许你为特殊的数据图设置自定义的字符串值。
    • link:(字符串)允许你通过数据图链接到网页,drill-down图表或自定义的JavaScript函数来获取更进一步的图表功能。
    • showLabel:(布尔型)用于启用或禁用特定数据图(栏)的标签显示。

    有很多可用的自定义选项可以根据你的具体使用情况使用。你可以查看这个庞大的图表属性列表来进行进一步探索。

    步骤3:渲染图表

    在渲染图表时,我们要定义HTML<div>元素。下面是做法:

    <body>
        <div id="barchart-container">Cool Chart on its way!</div>
    </body>

    要渲染图表,我们将调用render方法用于上面步骤中创建的图表对象。

    $coolChart->render();

    如果你正确地按照我上面提到的步骤去做,那么现在你应该已经创建好了一个图表。如果你在你的代码中发现任何错误,也可以参阅GitHub代码仓库以获得这个项目的全部源代码。

    更多资源

    在本教程中,我们在图表对象内直接传递JSON用于图表,但也有其他加载数据的方法。可以参考这个文档页面来了解其他加载数据的方法。

    PHP和MySQL被认为是用于服务器端语言和数据库的最好结合之一,目前被许多流行的web应用程序使用。要了解更多有关于它们的用法,可以查看这篇有关如何使用PHP和来自于MySQL数据库数据创建drill-down图表的教程。

    返回首页 下一篇

    声明: 此文观点不代表本站立场;转载务必保留本文链接;版权疑问请联系我们。

    别人在看

    抖音安全与信任开放日:揭秘推荐算法,告别单一标签依赖

    ultraedit编辑器打开文件时,总是提示是否转换为DOS格式,如何关闭?

    Cornell大神Kleinberg的经典教材《算法设计》是最好入门的算法教材

    从 Microsoft 下载中心安装 Windows 7 SP1 和 Windows Server 2008 R2 SP1 之前要执行的步骤

    Llama 2基于UCloud UK8S的创新应用

    火山引擎DataTester:如何使用A/B测试优化全域营销效果

    腾讯云、移动云继阿里云降价后宣布大幅度降价

    字节跳动数据平台论文被ICDE2023国际顶会收录,将通过火山引擎开放相关成果

    这个话题被围观超10000次,火山引擎VeDI如此解答

    误删库怎么办?火山引擎DataLeap“3招”守护数据安全

    IT头条

    平替CUDA!摩尔线程发布MUSA 4性能分析工具

    00:43

    三起案件揭开侵犯个人信息犯罪的黑灰产业链

    13:59

    百度三年开放2.1万实习岗,全力培育AI领域未来领袖

    00:36

    工信部:一季度,电信业务总量同比增长7.7%,业务收入累计完成4469亿元

    23:42

    Gartner:2024年全球半导体营收6559亿美元,AI助力英伟达首登榜首

    18:04

    技术热点

    iOS 8 中如何集成 Touch ID 功能

    windows7系统中鼠标滑轮键(中键)的快捷应用

    MySQL数据库的23个特别注意的安全事项

    Kruskal 最小生成树算法

    Ubuntu 14.10上安装新的字体图文教程

    Ubuntu14更新后无法进入系统卡在光标界面解怎么办?

      友情链接:
    • IT采购网
    • 科技号
    • 中国存储网
    • 存储网
    • 半导体联盟
    • 医疗软件网
    • 软件中国
    • ITbrand
    • 采购中国
    • CIO智库
    • 考研题库
    • 法务网
    • AI工具网
    • 电子芯片网
    • 安全库
    • 隐私保护
    • 版权申明
    • 联系我们
    IT技术网 版权所有 © 2020-2025,京ICP备14047533号-20,Power by OK设计网

    在上方输入关键词后,回车键 开始搜索。Esc键 取消该搜索窗口。