Изменить цвет только одной точки данных в gnuplot - PullRequest
1 голос
/ 01 мая 2020

Я делаю gif в gnuplot, и мои данные разделены на блоки. Мне нужно, чтобы точки были белыми, кроме просто первой строки каждого блока данных, которая была бы оранжевой точкой.

В настоящее время мой код:

#...
do for [i=0:int(STATS_blocks-1)]{
plot "positions.txt" index i pt 7 ps 0.5 lc 'white' title "t = ".((i+1)*200)." Myr"
}

Как видите, все точки данных отображаются белым, включая первую строку.

1 Ответ

3 голосов
/ 01 мая 2020

Отредактировано, чтобы показывать также переменные размеры точек

Если я правильно понимаю ваш формат данных:

set linetype 11 lc "orange"
set linetype 12 lc "white"

set style data points
do for [i=0:N] {
  plot "positions.txt" index i using 1:2:(column(0)>0 ? 0.5 : 2.0):(column(0)>0 ? 12 : 11) pt 7 ps variable lc variable
}

Переменный цвет (если используется) всегда берется из самого последний using столбец. Другие свойства переменных работают оттуда.

...