小编adw*_*aki的帖子

使用Gnuplot有条件地绘制点颜色

我有一个包含四列数据的文件.我只使用前三个绘制3D绘图,现在不需要第四个绘图.

我想知道如果它满足某些条件,如何改变点的颜色.例如,如果点的值(x,y,z)大于(16,400,65),我想将其绘制为灰色.如果它们比那个小,我想用红色.

我试图使用awk同样的东西,它只是用不同的颜色绘制两个点.这是我的代码.

gnuplot>splot "< awk '{if( ($2 > \"16\") || ($1 > \"400\") || ($3 > \"65\"))  print}'                                       
./8_77_non_pareto_data.dat " u 2:1:3 w p pt 8 lc rgb "grey", \
"< awk '{if( ($2 < \"16\") || ($1 < \"400\") || ($3 < \"65\"))  print}' 
./8_77_non_pareto_data.dat " u 2:1:3 w p pt 8 lc rgb "red", \
"./8_77_pareto_data.dat" u 2:1:3 w i lt 1 lc rgb "blue" t "Pareto points"
Run Code Online (Sandbox Code Playgroud)

我的数据文件如下所示:

48      15.057599573464184 …
Run Code Online (Sandbox Code Playgroud)

gnuplot

5
推荐指数
1
解决办法
5695
查看次数

从GML文件中提取数据

我有一个GML(图形(不是涂鸦)建模语言)文件,我想从中创建ID到标签的映射.我不知道如何做到这一点,因为我的列表操作似乎不起作用.我尝试使用指定如何使用两个分隔符的示例,但它不适用于我的文件.

有人可以指导我吗?

GML文件排列如下:

graph [
  node [
    id 0
    label "24"
  ]
  node [
    id 1
    label "25"
  ]
  node [
    id 2
    label "26"
  ]
  node [
    id 3
    label "27"
  ]
  node [
    id 4
    label "20"
  ]
  node [
    id 5
    label "21"
  ]
(... some more nodes)
  edge [
    source 0
    target 75
    weight 4
  ]
  edge [
    source 0
    target 68
    weight 2
  ]
(many more edges)
]
Run Code Online (Sandbox Code Playgroud)

我想提取每个节点块中的数据,并创建节点ID到节点标签的映射.例如,第一个节点的映射将是0-> 24,依此类推.我并不担心边缘信息.

在此先感谢您的帮助.

python networkx python-3.x graph-modelling-language

3
推荐指数
1
解决办法
1万
查看次数