Gnuplot矩阵数据格式规则查找途径及Fortran生成适配文件问询
Gnuplot矩阵数据格式适配指南
Gnuplot的矩阵格式规则实际收录在官方文档的splot命令下matrix关键字的说明章节,你之前搜索时大概率是没定位到3D数据输入的相关子模块。
核心格式规则
- 最简文本矩阵:文件内每一行的数值个数完全相等,对应矩阵的列数,总共有多少行就对应矩阵的行数,数值之间用空格或制表符分隔即可,不需要额外的标识符。
- 带坐标的文本矩阵:第一行首个位置留空,后续元素依次为x轴的各个坐标值;从第二行开始,每行第一个元素为当前行对应的y轴坐标,后续元素为对应(x,y)位置的z值。
- 二进制矩阵:按行优先顺序依次写入所有矩阵元素即可,使用时需要在Gnuplot的plot命令中通过
binary参数指定数据精度、矩阵行列数。
Fortran输出适配要点
- Fortran默认是列优先存储,如果输出二进制矩阵,需要先把矩阵转置后再按行写入,否则Gnuplot读取后会出现行列颠倒的问题。
- 输出文本矩阵时,确保每一行的所有列元素写完后再触发换行,不要在一行内插入多余换行符,数值输出精度不低于你绘图需要的精度即可。
- 如果需要自定义坐标轴坐标,按照带坐标的文本矩阵规则写入即可,第一行的首个占位符可以填空白字符或者
NaN值,Gnuplot都可以正常识别。
快速验证方式
输出文件后在Gnuplot中执行命令 splot '你的输出文件路径' matrix with pm3d,如果可以正常渲染热力图就说明格式匹配。
内容的提问来源于stack exchange,提问作者ethanmorton
相关产品推荐
相关产品推荐

