我有这个数据文件(TotalDurationBarPlot.dat
):
Indexed list 934
Tree list 3692
Array list 12274
Linked list 48188
我希望实现的是一个带有 4 个条形图的直方图:一个用于Indexed list,一个用于Tree list,一个用于Array list,一个用于Linked list。我的要求是:
- 每个酒吧都有它独特的颜色,
- 在每个栏的顶部,有一个数字表示栏的高度。(例如,在Tree list上方,有3692。)
- 如果在浅灰色背景上有一个图例,右上角有一个细黑色图例边框,那就太好了。
我目前的尝试
截至目前,我的数据文件如下所示:
# ILL TL AL LL
934 3692 12274 48188
...我的 gnuplot 脚本如下所示:
set title font "Monospaced,13" 'Total duration'
set grid
set key right top
set style data histograms
set style histogram cluster gap 2
set style fill solid border 2
set xtics format ""
set grid ytics
set ylabel "Milliseconds"
set yrange [0:70000]
# set boxwidth 0.5 relative
# set label "Array list\n134908 ms" at graph 0.145,0.9
ArrayListColor = "#491d75";
IndexedListColor = "#b32929";
LinkedListColor = "#d49435";
TreeListColor = "#12520b";
plot 'TotalDurationBarPlot.dat' using 1 title "Indexed list" linecolor rgb IndexedListColor, '' using 2 title "Tree list" linecolor rgb TreeListColor, '' using 3 title "Array list" linecolor rgb ArrayListColor, '' using 4 title "Linked list" linecolor rgb LinkedListColor, '' u 0:1:1 with labels offset -6.0,-100.0 title ""
set terminal png size 650,350 enhanced font "Monospaced,13"
set output 'TotalDuration.png'
replot
exit
它产生:
编辑 1
@meuhgnuplot
的答案中提供的代码生成以下图: