我在不完整的LaTeX文件中使用的Pandoc表示例
-------------------------------------------------
File Byte Chars Lines
------- --------- ----------- ---------
009 24152000 24152000 72456000
001 24152000 24152000 72456000
000 24103840 24103840 72311520
0000 193360 193360 580080
0001 241520 241520 724560
0002 241520 241520 724560
-------------------------------------------------
Gnuplot会接受
File Byte Chars Lines
009 24152000 24152000 72456000
001 24152000 24152000 72456000
000 24103840 24103840 72311520
0000 193360 193360 580080
0001 241520 241520 724560
0002 241520 241520 724560
我想直接从笔记中做gnuplots。
如何使用不完整的Pandoc表作为gnuplot的数据源? 如果存在一些选择,但我还没有找到,那将是很好的。
答案 0 :(得分:2)
您可以使用awk
删除空行以及以至少7个破折号开头的行,并使用以下命令
awk '!/(^\s*$|^-{7,})/' data.dat
正则表达式匹配所有仅包含空格或以至少七个短划线开头的行。
您也可以使用
从gnuplot动态调用此命令plot '< awk ''!/(^\s*$|^-{7,})/'' data.dat' skip 1
正则表达式周围加倍的单引号是你必须使用gnuplot转义其他单引号内的单引号的方法。并且使用单引号可以防止需要转义正则表达式中的反斜杠。
skip 1
忽略第一行。也许你想以其他方式使用它(例如,用于密钥)。
答案 1 :(得分:1)
看看Pandoc scripting。您必须编写一个匹配pandoc文档AST中所有Table
节点的脚本,并生成Gnuplot可以读取的格式(csv可能更容易生成)。
或者您可以使用pandoc -t json
来获取AST的JSON表示并执行类似的脚本编写。使用当前的Pandoc版本(1.14),您的sample would produce以下JSON:
[
{
"unMeta": {}
},
[
{
"t": "Table",
"c": [
[],
[
{
"t": "AlignLeft",
"c": []
},
{
"t": "AlignLeft",
"c": []
},
{
"t": "AlignLeft",
"c": []
},
{
"t": "AlignLeft",
"c": []
}
],
[
0.15,
0.15,
0.2,
0.1125
],
[
[
{
"t": "Plain",
"c": [
{
"t": "Str",
"c": "File"
}
]
}
],
[
{
"t": "Plain",
"c": [
{
"t": "Str",
"c": "Byte"
}
]
}
],
[
{
"t": "Plain",
"c": [
{
"t": "Str",
"c": "Chars"
}
]
}
],
[
{
"t": "Plain",
"c": [
{
"t": "Str",
"c": "Lines"
}
]
}
]
],
[
[
[
{
"t": "Plain",
"c": [
{
"t": "Str",
"c": "009"
}
]
}
],
[
{
"t": "Plain",
"c": [
{
"t": "Str",
"c": "24152000"
}
]
}
],
[
{
"t": "Plain",
"c": [
{
"t": "Str",
"c": "24152000"
}
]
}
],
[
{
"t": "Plain",
"c": [
{
"t": "Str",
"c": "72456000"
}
]
}
]
],
[
[
{
"t": "Plain",
"c": [
{
"t": "Str",
"c": "001"
}
]
}
],
[
{
"t": "Plain",
"c": [
{
"t": "Str",
"c": "24152000"
}
]
}
],
[
{
"t": "Plain",
"c": [
{
"t": "Str",
"c": "24152000"
}
]
}
],
[
{
"t": "Plain",
"c": [
{
"t": "Str",
"c": "72456000"
}
]
}
]
],
[
[
{
"t": "Plain",
"c": [
{
"t": "Str",
"c": "000"
}
]
}
],
[
{
"t": "Plain",
"c": [
{
"t": "Str",
"c": "24103840"
}
]
}
],
[
{
"t": "Plain",
"c": [
{
"t": "Str",
"c": "24103840"
}
]
}
],
[
{
"t": "Plain",
"c": [
{
"t": "Str",
"c": "72311520"
}
]
}
]
],
[
[
{
"t": "Plain",
"c": [
{
"t": "Str",
"c": "0000"
}
]
}
],
[
{
"t": "Plain",
"c": [
{
"t": "Str",
"c": "193360"
}
]
}
],
[
{
"t": "Plain",
"c": [
{
"t": "Str",
"c": "193360"
}
]
}
],
[
{
"t": "Plain",
"c": [
{
"t": "Str",
"c": "580080"
}
]
}
]
],
[
[
{
"t": "Plain",
"c": [
{
"t": "Str",
"c": "0001"
}
]
}
],
[
{
"t": "Plain",
"c": [
{
"t": "Str",
"c": "241520"
}
]
}
],
[
{
"t": "Plain",
"c": [
{
"t": "Str",
"c": "241520"
}
]
}
],
[
{
"t": "Plain",
"c": [
{
"t": "Str",
"c": "724560"
}
]
}
]
],
[
[
{
"t": "Plain",
"c": [
{
"t": "Str",
"c": "0002"
}
]
}
],
[
{
"t": "Plain",
"c": [
{
"t": "Str",
"c": "241520"
}
]
}
],
[
{
"t": "Plain",
"c": [
{
"t": "Str",
"c": "241520"
}
]
}
],
[
{
"t": "Plain",
"c": [
{
"t": "Str",
"c": "724560"
}
]
}
]
]
]
]
}
]
]