Highcharts饼图可以有url链接

2023-12-14

我在我的应用程序中使用 Highcharts 饼图,其中饼图的数据是从数据库填充的。我的问题是填充饼图后,如果我单击某个区域,它应该呈现到特定的 php 页面。是否可以?

这是我的代码:

    function open_risk_level_pie()
    {
    $chart = new Highchart();

    $chart->chart->renderTo = "open_risk_level_pie";
    $chart->chart->plotBackgroundColor = null;
    $chart->chart->plotBorderWidth = null;
    $chart->chart->plotShadow = false;
    $chart->title->text = "Risk Level";

    $chart->tooltip->formatter = new HighchartJsExpr("function() {
    return '<b>'+ this.point.name +'</b>: '+ this.point.y; }");

    $chart->plotOptions->pie->allowPointSelect = 1;
    $chart->plotOptions->pie->cursor = "pointer";
    $chart->plotOptions->pie->dataLabels->enabled = false;
    $chart->plotOptions->pie->showInLegend = 1;
    $chart->plotOptions->pie->colors = array('red', 'orange', 'yellow', 'black');
    $chart->credits->enabled = false;

    // Open the database connection
    $db = db_open();

// Get the risk levels
$stmt = $db->prepare("SELECT * from `risk_levels`");
$stmt->execute();
$array = $stmt->fetchAll();
$high = $array[0][0];
$medium = $array[1][0];
$low = $array[2][0];

    // Query the database
    $stmt = $db->prepare("select a.calculated_risk, COUNT(*) AS num, CASE WHEN a.calculated_risk >= " . $high . " THEN 'High' WHEN a.calculated_risk < " . $high . " AND a.calculated_risk >= " . $medium . " THEN 'Medium' WHEN a.calculated_risk < " . $medium . " AND a.calculated_risk >= " . $low . " THEN 'Low' WHEN a.calculated_risk < " . $low . " AND a.calculated_risk >= 0 THEN 'Insignificant' END AS level from `risk_scoring` a JOIN `risks` b ON a.id = b.id WHERE b.status != \"Closed\" GROUP BY level ORDER BY a.calculated_risk DESC");
    $stmt->execute();

    // Store the list in the array
    $array = $stmt->fetchAll();

    // Close the database connection
    db_close($db);

    // If the array is empty
    if (empty($array))
    {
            $data[] = array("No Data Available", 0);
    }
    // Otherwise
    else
    {
            // Create the data array
            foreach ($array as $row)
            {
                    $data[] = array($row['level'], (int)$row['num']);
            }

            $chart->series[] = array('type' => "pie",
                    'name' => "Level",
                    'data' => $data);
    }

echo "<div id=\"open_risk_level_pie\"></div>\n";
echo "<script type=\"text/javascript\">";
echo $chart->render("open_risk_level_pie");
echo "</script>\n";

}


highcharts 网站上有一个示例显示类似的内容。您可以使用点/事件/点击函数来触发新页面加载:

 plotOptions: {
        series: {
            cursor: 'pointer',
            point: {
                events: {
                    click: function() {
                        location.href = this.options.url;
                    }
                }
            }
        }
    },

http://jsfiddle.net/w5Lx4/

请注意,在此示例中,URL 将添加到系列数据中:

 data: [{
            y: 29.9,
            url: 'http://bing.com/search?q=foo'
        }, {

您可以将其替换为根据 y 点值生成 URL。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

Highcharts饼图可以有url链接 的相关文章

随机推荐

  • 在图像完全加载之前使用 Javascript 获取图像尺寸

    我读过有关图像完全加载后获取图像尺寸的各种方法 但是一旦开始加载就可以获取任何图像的尺寸吗 我还没有通过搜索找到太多相关信息 这让我相信这是不可能的 但事实是浏览器 在我的例子中是 Firefox 显示了我在标题中的新选项卡中打开的任何图像
  • 通过 docker-compose 运行时,Flask CLI 抛出“OSError: [Errno 8] Exec format error”

    我正在运行一个 Flask 应用程序自定义脚本 无论如何 或者尝试这样做 我使用的是 Windows 10 应用程序应该使用以下命令在 Linux Docker 容器中运行 docker compose up api Docker comp
  • WebForms 自定义/动态路由

    我在用着菲尔 哈克的WebForms 的 URL 路由 我想定义一个 动态 的路由 假设我有这条路线 any aspx 转到 gt PageProcessor aspx 这会将任何非物理页面的请求发送到 PageProcessor 页面 这
  • 如何在Matlab中使用for循环处理大视频并且没有内存错误

    我是 Matlab 处理的新手 我想在 for 循环 或没有它 中读取和处理一个大视频 超过 200k 帧 我特别想 使用VideoReader阅读视频 将视频细分为 n 个纪元 每个纪元 1000 帧 处理 1000 帧的每个 epoch
  • Git - 在线存储库中有未跟踪的文件[重复]

    这个问题在这里已经有答案了 我正在使用 git bitbucket 来控制我的 Linux 配置文件 所有文件都在目录中 cfg 然后我另外还有一些本地配置文件 cfg local 这些应该因机器而异 我想在我的在线存储库中保留本地文件的副
  • Java - for循环终止表达式之间的区别

    我只是好奇 这两个循环实现之间的速度和性能是否有差异 假使 假设size 方法返回处理一组元素的数组 集合或对象的长度 实际上它来自XOM api 实施1 int size someArray size for int i 0 i lt s
  • 如何在 OPENROWSET(BULK...) 中动态指定文件的路径?

    我想将图像插入图像字段 最好使用接受图像路径的存储过程 经过一番折腾后我想出了这个 functional DECLARE parameters nvarchar max DECLARE sql string nvarchar max N U
  • 如何从 ILNumerics 曲面图上鼠标的单击位置找到曲面的 3D 坐标?

    目前 我们的系统使用 ILNumerics 3D 绘图立方体类和 ILNumerics 曲面组件来显示 3D 网格曲面 我们系统的目标是能够通过鼠标单击绘图来询问表面上的各个点 我们在绘图上设置了 MouseClick 事件 问题是我不确定
  • 如何从 R 中的 nls 获取绘图?

    在 R 中 我使用 nls 进行非线性最小二乘拟合 那么如何使用拟合提供的系数值绘制模型函数呢 是的 这是一个very来自 R 相关新手的天真问题 使用第一个例子 nls按照我逐行指出的示例 可以实现以下目标 This is just ou
  • 在 Objective-C 中检查空字符串的正确方法是什么?

    我在我的 iPhone 应用程序中使用了这个 if title nil do something 但它引发了一些异常 并且控制台显示标题为 null 所以我现在用这个 if title nil title isKindOfClass NSN
  • 如何在 Pandas 数据框中展开列

    我有以下熊猫数据框 import pandas as pd import numpy as np df pd DataFrame fc 100 100 112 1 3 14 125 sample id S1 S1 S1 S2 S2 S2 g
  • VC++ 增量链接器错误 LNK1000

    免责声明 我是一名 C 人员 几乎没有 VS C MFC 经验 我正在尝试在我的机器上构建一些混合 C Net 的项目 当在我的机器上通过命令行编译 C 项目时 我收到此错误 链接 致命错误 LNK1000 IMAGE BuildImage
  • 等待谷歌服务器端函数解析的最简单方法

    我需要客户端代码等待被调用的服务器端 google script run 函数完成 然后再运行更多代码 The withSuccessHandler successFunc 不会导致服务器调用之后的代码行等待 我做了什么 async fun
  • JavaBeans 属性适配器如何工作?

    如果我遵循所描述的 JavaFX 属性定义 我想要做的事情就很好here 现在 我想使用 Java Beans 属性适配器来定义 Java Beans 对象的属性 由于没有文档 我无法弄清楚它是如何工作的 假设我有一个简单的 POJO 类
  • 将整数作为常量引用传递与复制

    这可能是一个愚蠢的问题 但我注意到在大量 API 中 许多采用不打算修改的整数参数的方法签名如下所示 void method int x 而不是 void method const int x 对我来说 这两个似乎都会function一模一
  • aws-sdk: NoSuchKey: 指定的密钥不存在?

    在我的nodejs项目中 我使用aws sdk从我的s3存储桶下载所有图像 但我收到此错误 NoSuchKey 指定的密钥不存在 但密钥是正确的 我可以使用这些密钥上传图像 我的代码是 var AWS require aws sdk s3
  • 将计划的开始值和结束值建模为变量

    我正在尝试在 Anylogic 中构建一个模型 该模型将优化资源池的开始和结束时间以满足需求 有没有办法将计划的开始时间和结束时间作为参数输入到优化模型中 我目前的班次是8 5 可以满足30天的需求 但优化模型可能会说6 6 我们加班 可以
  • 什么是 /sys/class/gpio/export 和 `/sys/class/gpio/unexport 机制以及底层 sysfs 功能是什么?

    在 Android 和 Linux 下使用旧版 sysfs GPIO 的第一步是export您要使用的特定 GPIO 引脚 当您完成 GPIO 引脚的操作后unexport it 我一直在寻找一个解释export命令实际上是这样做的 但是我
  • 如何在 DataTable 中显示加载/处理消息?

    在我的应用程序中我正在使用数据表网 var ticketHistoryDataTable ticketHistoryData DataTable paging false data searching false columns data
  • Highcharts饼图可以有url链接

    我在我的应用程序中使用 Highcharts 饼图 其中饼图的数据是从数据库填充的 我的问题是填充饼图后 如果我单击某个区域 它应该呈现到特定的 php 页面 是否可以 这是我的代码 function open risk level pie