Php 如何用颜色区分图表

Php 如何用颜色区分图表,php,jquery,web,charts,chart.js,Php,Jquery,Web,Charts,Chart.js,我想用颜色来区分这个图表中的“男人”和“女人”。也许我们可以用绿色做男人的图表,用粉色做女人的图表。 这是我的密码 //data.php <?php //setting header to json header('Content-Type: application/json'); //database define('DB_HOST', '127.0.0.1'); define('DB_USERNAME', 'root'); define('DB_PASSWORD', ''); def

我想用颜色来区分这个图表中的“男人”和“女人”。也许我们可以用绿色做男人的图表,用粉色做女人的图表。 这是我的密码

//data.php

<?php
//setting header to json
header('Content-Type: application/json');

//database
define('DB_HOST', '127.0.0.1');
define('DB_USERNAME', 'root');
define('DB_PASSWORD', '');
define('DB_NAME', 'dbintegrasi');

//get connection
$mysqli = new mysqli(DB_HOST, DB_USERNAME, DB_PASSWORD, DB_NAME);
if(!$mysqli){
    die("Connection failed: " . $mysqli->error);
}

//query to get data from the table
$query = sprintf("SELECT JenisKelaminID, COUNT(JenisKelaminID) as jumlah FROM tahunmasukmagister GROUP BY JenisKelaminID");

//execute query
$result = $mysqli->query($query);

//loop through the returned data
$data = array();
foreach ($result as $row){
    $data[] = $row;
}

//freee memory associated with result
$result->close();

//close connection
$mysqli->close();

//new print the data
print json_encode($data);

你能帮我解这些密码吗?提前感谢

根据这里的Chart.js文档: ,

您需要为每个标签添加“属性”

在代码中,我假设您有3个标签,分别是男性、女性和其他

例如,在您的代码中:

datasets: [
                {
                    label : 'Gender',
                    backgroundColor: 'rgba(250, 300, 100, 0.75)',
                    borderColor: 'rgba(200, 200, 200, 0.75)',
                    hoverBackgroundColor: 'rgba(200, 200, 200, 1)',
                    hoverBorderColor: 'rgba(200, 200, 200, 1)',
                    data: jumlah
                }
            ]
只有一个“backgroundColor”、“borderColor”、“hoverBackgroundColor”和“hoverBorderColor”,仅用于一个标签

因此,您应该将每个属性作为一个数组,如下所示:

backgroundColor: [
       'rgba(79, 181, 59, 1)', //green for men
       'rgba(239, 87, 196, 1)', //pink for women
       'rgba(166, 160, 164, 1)', //grey for other
],

对其他类似属性执行此操作。

根据此处的Chart.js文档: ,

您需要为每个标签添加“属性”

在代码中,我假设您有3个标签,分别是男性、女性和其他

例如,在您的代码中:

datasets: [
                {
                    label : 'Gender',
                    backgroundColor: 'rgba(250, 300, 100, 0.75)',
                    borderColor: 'rgba(200, 200, 200, 0.75)',
                    hoverBackgroundColor: 'rgba(200, 200, 200, 1)',
                    hoverBorderColor: 'rgba(200, 200, 200, 1)',
                    data: jumlah
                }
            ]
只有一个“backgroundColor”、“borderColor”、“hoverBackgroundColor”和“hoverBorderColor”,仅用于一个标签

因此,您应该将每个属性作为一个数组,如下所示:

backgroundColor: [
       'rgba(79, 181, 59, 1)', //green for men
       'rgba(239, 87, 196, 1)', //pink for women
       'rgba(166, 160, 164, 1)', //grey for other
],

为其他类似属性执行此操作。

谢谢。顺便说一句,图表上方有一个标签,性别为绿色。你知道如何添加标签,这样我就可以做一个男性为绿色,女性为粉色的标签了吗?谢谢。顺便说一句,图表上方有一个标签,性别为绿色。你知道如何添加标签,这样我就可以制作一个男性为绿色,女性为粉色的标签了吗@afzafri将数据集中的
标签:“性别”
更改为您的性别数组,如下
label:Gender
。它应该自动跟随您设置的
backgroundColor
数组。我猜,如果您觉得我的答案对您有帮助,请将其标记为答案:)谢谢。顺便说一句,图表上方有一个标签,性别为绿色。你知道如何添加标签,这样我就可以做一个男性为绿色,女性为粉色的标签了吗?谢谢。顺便说一句,图表上方有一个标签,性别为绿色。你知道如何添加标签,这样我就可以制作一个男性为绿色,女性为粉色的标签了吗@afzafri将数据集中的
标签:“性别”
更改为您的性别数组,如下
label:Gender
。它应该自动跟随您设置的
backgroundColor
数组。我猜,如果您发现我的答案对您有帮助,请将我的答案标记为答案:)