0

いくつかのブログ、チュートリアル、および印刷方法を調べた棒グラフを使用してデータを表示したいレポートを作成しています。しかし、今、私の必要性は、データをパーセンテージで表示して印刷したいということです。誰かが私を助けてくれますか?

これが私のコードです:

<style>
.clear{
    clear:both;
}

.graphcont {
    padding-top:10px;
    color:#000;
    font-weight:700;
    float:left
}

.graph {
    float:left;
    margin-top:10px;
    background-color:#cecece;
    position:relative;
    width:280px;
    padding:0
}

.graph .bar {
    display:block;
    position:relative;
    background-image:url(images/bargraph.gif);
    background-position:right center;
    background-repeat:repeat-x;
    border-right:#538e02 1px solid;
    text-align:center;
    color:#fff;
    height:25px;
    font-family:Arial, Helvetica, sans-serif;
    font-size:12px;
    line-height:1.9em
}

.graph .bar span {
    position:absolute;
    left:1em
}
</style>

</head>

<body>

<div id="container">

<?php
require("includes/dbconnect.php");

$getcen  = mysql_query("SELECT count(*) AS totcen, center FROM `makhtab` WHERE center != '' GROUP BY center ORDER BY center") or die(mysql_error());

while ($mcent = mysql_fetch_array($getcen)) {  
     echo '<div class="rating"><div class="graphcont"><div class="graph"><strong class="bar" style="width:'.$mcent["totcen"].'%;">'.$mcent["totcen"].'</strong></div></div></div>
      <div class="clear"></div>';
}
?>
</div>

上記のコードは正常に機能しますが、バーが固定幅で表示されるdivを設定し、クエリによって作成されたパーセンテージに従ってバー幅を操作したいと思います。前もって感謝します。

4

3 に答える 3

2

あなたへの私のアドバイスは、チャート作成の世話をするために外部の軽量フレームワークを使用することです、それは多くのことを単純化します。

RazorFlowは本当に良いです、それを試してみてください。

于 2013-05-03T20:07:39.960 に答える
1

バーを正しく表示するには、「totmakh」値が表すパーセンテージの値を計算する必要があります。

まず、100%を表す最大許容値を知る必要があります。これは、MAXと呼ばれると仮定します。この値を定義すると、パーセンテージの計算は簡単になります。

$percentage = $mcent["totmakh"] * 100 / MAX;

次に、その値を使用して、divのパーセンテージ幅を設定できます。

于 2013-03-14T09:51:27.067 に答える
0

PHPでインタラクティブなグラフと表を含むダッシュボードを作成し、MySQLでデータを作成する場合は、RazorFlowPHPを確認できます。

必要な種類のグラフを使用してSQLからレポートを作成できるようになります。

(開示:私はRazorFlowの開発者であり、関連性があると感じたという理由だけで投稿しています)

于 2013-03-19T12:06:45.600 に答える