php - 有没有办法让 Y 轴不适应谷歌柱形图的加载表?
问题描述
我目前正在致力于一个信息安全项目,在该项目中加载虚构数据并使用谷歌图表进行可视化。但是,在加载柱形图时,Y 轴以不需要的方式加载,我尝试了多次测试来确定问题出在哪里,但到目前为止还没有运气。
我有 3 个表,每个表有 2 个属性。这些表是:“Phishing”、“SpearPhishing”和“RogueRouter”。它们都有两列,我想计算并显示属性名称,例如“好奇”和“意图”。
正在使用以下 SQL 语法:
SELECT 'Phishing' as method, count(check_opened) as curious, count(clicked_link)
as intent FROM Phishing UNION ALL SELECT 'Spear Phishing' as method, count(check_opened)
as curious, count(clicked_link) as intent FROM SpearPhishing UNION ALL
SELECT 'Rogue Router' as method, count(page_load) as curious, count(internet_intent)
as intent FROM RogueRouter GROUP BY method
在 Phpmyadmin 中,运行时会显示以下内容:
但是,在我的 PHP 文件中使用以下代码将数据显示为列:
<?php
$connect = mysqli_connect("localhost", "isprojectdbadmin", "isproject!23", "ISProjectDB");
$query = [THE SQL QUERY MENTIONED ABOVE]
$result = mysqli_query($connect, $query);
?>
<html>
<head>
<script type="text/javascript" src="https://www.gstatic.com/charts/loader.js"></script>
<script type="text/javascript">
google.charts.load('current', {'packages':['bar']});
google.charts.setOnLoadCallback(drawChart);
function drawChart() {
var data = google.visualization.arrayToDataTable([
['method', 'curious', 'intent'],
<?php
while($row = mysqli_fetch_array($result))
{
echo "['".$row['method']."', '".$row['curious']."', '".$row['intent']."'], ";
}
?>
]);
};
var chart = new google.charts.Bar(document.getElementById('columnchart_material'));
chart.draw(data, google.charts.Bar.convertOptions(options));
}
</script>
</head>
<body>
<div id="columnchart_material" style="width: 800px; height: 500px;"></div>
</body>
</html>
它显示以下内容:
Y 轴的值不是从 0 到 40 的梯度,我不知道问题出在哪里。非常感谢任何帮助,甚至一些轻微的建议也会有所帮助,因为我感觉有点卡住了。此外,正如我在本文开头提到的那样,这个项目背后没有任何恶意活动,恰恰相反。
解决方案
我自己解决了!问题是用于读取行的 PHP 语法。
以下行:
echo "['".$row['method']."', '".$row['curious']."', '".$row['intent']."'], ";
被替换为:
echo "['".$row["method"]."', ".$row["curious"].", ".$row["intent"].", ],";
推荐阅读
- javascript - 如何从另一个对象制作新对象?
- swift - 来自 Google Places 地址的核心位置地理编码不适用于意大利城市
- user-interface - 是否可以在仅使用 HTML、CSS 和 JS 的 Linux Embedded 上开发 GUI?
- android - 如何解决couchdb android中的连接错误?
- reactjs - React - 从另一个组件发送道具后状态未更新
- python - 根据表中的给定数据创建一个新的嵌套列表/元组 [Python]
- angular - 业力:属性没有访问类型 get
- ruby-on-rails - Rails 6 测试的问题
- c++ - 错误 C2677:二进制“*”:未找到全局运算符
- php - 使 AJAX 分页在刷新时与 (AJAX) URL 过滤器参数一起工作