scala 读雷达数据文件,生成png
来源:互联网 发布:学大数据能找到工作嘛 编辑:程序博客网 时间:2024/05/03 12:32
使用scala语言,从雷达文件中读取二维矩阵,并将矩阵保存成png
代码如下:
import scala.io.Sourceimport java.io._import java.awt.Imageimport java.awt.Toolkitimport java.awt.image._import javax.imageio._import java.awt.Color
import scala.reflect.ClassTagobject RadareTest { def main(arges:Array[String]){ //0~15对应的颜色值 val cormap = Map(0-> new Color(0,0,0).getRGB, 1->new Color(170,170,170).getRGB, 2->new Color(118,118,118).getRGB, 3->new Color(0,254,254).getRGB, 4->new Color(0,174,174).getRGB, 5->new Color(0,254,0).getRGB, 6->new Color(0,142,0).getRGB, 7->new Color(254,0,254).getRGB, 8->new Color(174,50,124).getRGB, 9->new Color(0,0,254).getRGB, 10->new Color(50,0,150).getRGB, 11->new Color(254,254,0).getRGB, 12->new Color(254,170,0).getRGB, 13->new Color(254,0,0).getRGB, 14->new Color(174,0,0).getRGB, 15->new Color(254,254,254).getRGB) //读文件,将文件内容转化为二维int数组 val file = Source.fromFile("E:/txt/txt_cr_Z9010_20130722/cr_int1_Z9010_20130722_001.txt") val arrInts = file.mkString.split("\\s+").filter(_.length > 0) .map(e=>cormap(e.toInt)).grouped(552).toArray //矩阵转置, 使二维数据符合在图片上的位置:从西向东,从南向北 val rc = transpose(arrInts).map(row=>row.reverse) val arrs = transpose(rc).flatten //关闭文件 file.close() //生成新图片 val width = 552 val height = 424 val imageNew = new BufferedImage(width,height,BufferedImage.TYPE_INT_RGB) imageNew.setRGB(0,0,width,height,arrs,0,width) //设置RGB val outFile = new File("E:/Z9010_20130722_001.png") val bb = ImageIO.write(imageNew, "png", outFile) //写图片 println("write over!") } /* * 泛型函数 矩阵转置,行列互换 */ def transpose[T:ClassTag](xss: Array[Array[T]]): Array[Array[T]] ={ for (i <- Array.range(0, xss(0).length)) yield for (xs <- xss) yield xs(i) } }生成的图片如下:
0 0
- scala 读雷达数据文件,生成png
- 生成数据文件
- 数据文件转PNG图片程序
- JfreeChart 生成图表-雷达图
- freemaker生成数据文件
- 随机生成大数据文件
- 如何快速生成数据文件
- 雷达
- URL生成png图
- photoshop生成透明png
- java生成随机大数据文件
- j2me image 生成 png 字节
- AutoCAD生成png透明图像
- 将文字生成png图片
- Scala DataFrame生成技巧
- python 通过phantomjs 调用highcharts 生成图片 雷达图,柱状图
- Android Logo生成(PNG转PPM、PNG转RLE)
- 【matlab】读生成的指定路径下的数据文件并保存到矩阵中
- android应用中去掉标题栏的方法
- buctoj-1031 String 和StringBuffer 实现输入字符串反转输出功能
- iOS自动布局
- WebApp与传统APP
- response输出乱码问题
- scala 读雷达数据文件,生成png
- UVA 10154 Weights and Measures(dp)
- 设计模式开篇-设计原则
- [3D理论] 关于unity中的update、Lateupdate和FixedUpdate
- 基于 UML 的业务建模举例
- HDU2156 分数矩阵【水题】【递推】
- php中的设计模式之--命令模式
- “Ceph浅析”系列之一——前言
- android 重启 adb 遇到 Make sure the plugin is properly configured