2015-04-13 2 views
-3

Мне нужно построить несколько матриц, используя тот же набор цветовых схем. В настоящее время я использую эту программу.Множество матриц, строящихся в gnuplot

do for [i=0:10] { 
    set term png 
    set output 'sort'.i.'.png' 
    unset key        
    plot 'sort'.i.'.dat' matrix with image 
} 

Это график различных участков с разной цветовой гаммой.

+0

Так что ваш фактический вопрос? – Christoph

+0

всякий раз, когда я рисую новое изображение, он начинается с нового цветового диапазона, но я хочу построить все с одинаковым набором цветовых диапазонов, чтобы я мог сделать анимацию. Позвольте мне уточнить свой вопрос, сортировать i .dat - это 10 файлов с данными в разное время. теперь, если я закладываю тепловые карты всех файлов и делаю gif-файл, тогда я могу показать анимацию. Но я столкнулся с проблемой: Тепловая карта каждого файла имеет различную цветовую гамму, т. Е. Если в первом изображении 0 было белое в следующем изображении, оно становится красным или синим, потому что диапазон матричных элементов изменяется в каждом файле данных. –

+0

Хорошо, теперь мы приближаемся. Пожалуйста, обновите вопрос, чтобы включить всю эту информацию. – Christoph

ответ

0

Вы должны установить фиксированный cbrange для всех участков. Если вы знаете этот диапазон заранее, вы можете просто установить его с помощью

set cbrange[min:max] 

перед тем, как начать цикл над файлами.

Если вы не знаете диапазон, то вы должны вычислить его с помощью команды stats, прежде чем делать сюжеты:

max = min = 0 
do for [i=0:10] { 
    stats 'sort'.i.'.dat' matrix using 3 nooutput 
    if (i == 0) { 
    max = STATS_max 
    min = STATS_min 
    } else { 
    if (STATS_max > max) { max = STATS_max } 
    if (STATS_min < min) { min = STATS_min } 
    } 
} 

set cbrange [min:max] 

do for [i=0:10] { 
    set term png 
    set output 'sort'.i.'.png' 
    unset key        
    plot 'sort'.i.'.dat' matrix with image 
} 
Смежные вопросы