我还是不明白你的问题,因为你的数据似乎并没有你的图来匹配,但是我可以告诉你如何用awk
来选择你所选颜色的600x500 PNG。
最简单的方法,我认为是使用NetPBM
ASCII便携式Pixmap格式,其描述为here。我使用的是P3
,因此它是ASCII码,易于处理,但不具有空间效率。
下面是一个例子:
awk '
BEGIN{
# Output NetPBM P3 ASCII Portable Pixmap header
printf "P3\n"
# Output width and height
width=600; height=500
printf "%d %d\n",width,height
# Output maximum range (i.e. 8-bit)
printf "255\n"
# Set up colors
color[1]="255 0 0" # red
color[2]="0 255 0" # green
color[3]="0 0 255" # blue
color[4]="0 255 255" # cyan
color[5]="255 0 255" # magenta
color[6]="255 255 0" # yellow
}
END{
for(y=0;y<height;y++){
for(x=0;x<width;x++){
# Select new random color every 30 pixels so it comes out "blocky"
if((x%30)==0){
c=color[int(rand()*6)+1];
}
printf "%s\n",c
}
}
}' /dev/null | convert - result.png
在BEGIN
块,I输出的PPM头和设置我的颜色。在END
块中,我运行一个循环,为图像的每个像素生成颜色。我使用/dev/null
作为文件,以便awk
不会挂起,并且它确实到达END
块。
因此,(中间)PPM
文件看起来像这样在你的情况 - 显示标题和第一行的前3个绿色像素:
P3
600 500
255
0 255 0
0 255 0
0 255 0
...
...
之后,我告诉ImageMagick的转换输入PPM
文件到PNG
文件。
如果你需要计算地球表面上的点之间的距离(我无法从你的问题告诉),您将需要haversine公式,我写了作为一个awk
功能的另一答案here。
ImageMagick安装在大多数Linux发行版上,可用于OSX和Windows - see here。
PNG文件将反映可以说10种颜色,其中值被划分为10个范围,每个范围 –
1种颜色这是挺难理解,但我敢肯定这是可以做到很容易不够的,如果你花时间来正确解释它。请显示你的第一个纬度和经度,以及相应的情节如何。目前,例如,您的滑动条和长条形可能看起来像54度33分钟N和32度18分钟W,或者可能是18和32作为100x100网格上的坐标。 –
什么颜色与任何事情有关?你没有提到你的问题中的颜色。另外,请不要在注释中解释事情 - 这真的很难阅读 - 相反,单击原始问题下的“编辑”并澄清您的问题。 –