2015-11-18 2 views
1

В принципе у меня есть изображение, представляющее собой набор сложных фигур с собственной осью и разными цветами и набор данных точек, которые я могу построить поверх него, что прекрасно работает, см. пример с минимальным кодом. Я использую fortran для создания командного файла gnuplot и запуска gnuplot.Прозрачное фоновое изображение и цвет определенных точек

plot "Random.png" binary filetype=png with rgbimage axis x2y2, "xydata1.dat" using 1:2 with points axis x1y1 

Мои проблемы в том, что изображение затрудняет просмотр точек сверху. Из-за того, что формы имеют много разных цветов, невозможно выбрать цвет для точек, которые хорошо видны на всех фигурах.

Так может ли картина быть поставлена ​​в фоновом режиме, скажем, на 50% прозрачности, не делая ее прозрачной в другой программе?

И можно ли получить цвет фона в местах точек назад, чтобы форма, в которой они находились, может быть определена автоматически?

ответ

1

Вы можете использовать стиль rgbalpha построения графиков и дано явное значение прозрачности:

plot "Random.png" binary filetype=png using 1:2:3:(127) with rgbalpha axis x2y2\, 
    "xydata1.dat" using 1:2 with points axis x1y1 

значение Прозрачность должна быть между 0 (полностью прозрачный) и 255 (полностью непрозрачный).

+0

Отлично, спасибо большое. Я не знал, что использование 1: 2: 3: (127) может использоваться с изображением вместо массива. Есть ли у вас подсказка, можно ли сделать вторую часть моего вопроса? – TomH

+0

Нет, это невозможно, потому что gnuplot знает только данные, которые он в настоящее время создает, и вы не можете получить доступ к данным из второго файла. Поэтому вы должны предварительно обработать свои данные другой программой. Или, если это возможно, вы можете создать третий столбец внутри своей программы fortran, который содержит эту информацию. – Christoph

+0

Еще раз спасибо. Информация еще не существует, и мне было интересно, может ли gnuplot помочь мне получить эту информацию, поэтому третий столбец в fortran не помог бы, к сожалению. Но теперь я знаю, что gnuplot не решит его, поэтому я знаю, что мне нужно искать в другом месте. – TomH

Смежные вопросы