2

Gnuplot を使用してヒストグラムを生成していますが、値が特定の値を上回っているか下回っている場合は、それらの一部を別の色に着色する必要があります。たとえば、値が 10 未満の場合、特定のヒストグラムを緑色にします。値 > 10、値 < 20 の場合、特定のヒストグラムを黄色にします。値が 20 より大きい場合、ヒストグラムの色を赤にします。

だから私はグラフを次のようにしたい:

×y .

1. 4 . 緑

2. 15 . 黄色

3. 40 . 赤

値 (x と y) はデータベースから取得されるため、値が時々変化するため、色付けしたい x 値を Gnuplot に伝えることはできません。

Gnuplot (および php) でこれを達成できますか?

ありがとう!

4

2 に答える 2

6

次の gnuplot スクリプトを使用できます。

set style fill transparent solid 0.5 noborder
set boxwidth 0.95 relative
set palette model RGB defined (0 "green", 1 "yellow", 2 "red")
plot 'path\to\your\file' using 1:2:($2<=10 ? 0 : $2<=20 ? 1 : 2) with boxes palette

私のテストファイルの内容は

1 4
2 15
3 40

そして私が得る結果は

ここに画像の説明を入力

于 2013-04-04T11:15:44.220 に答える