#2d #gnuplot #transparency #errorbar
#2d #gnuplot #прозрачность #панель ошибок
Вопрос:
Всем привет,
У меня есть входные данные в виде:
x (1),y (2),z (2)
x (2),y (2),z (2)
и так далее,
где значения x и y находятся на осях x и y соответственно, а значения z являются полосами ошибок. Как я мог бы воспроизвести рисунок из Gnuplot, на котором полосы ошибок на нескольких графиках прозрачны?
Есть идея? Спасибо!
Ответ №1:
Стиль построения with filledcurves
может использоваться с 3 столбцами входных данных для создания заштрихованных областей. Центральные линии пришлось бы рисовать отдельно. Gnuplot ожидает ввода
x y1 y2
итак, если ваши данные имеют форму x, y, дельта-y, вы можете сконструировать команды gnuplot, сконструировав y1 и y2 в using
спецификаторе
set term png truecolor # or "set term pngcairo"
set output 'fill.png'
#
set style fill transparent solid 0.25 # partial transparency
set style fill noborder # no separate top/bottom lines
plot 'data' using 1:2 with lines lc "blue" title "Force",
'data' using 1:($2-$3):($2 $3) with filledcurves lc "blue" notitle,
'data' using ($1-Shift):2 with lines lc "green" title "Shift",
'data' using ($1-Shift):($2-$3):($2 $3) with filledcurves lc "green" notitle
Комментарии:
1. Спасибо, Итан. Я уже пробовал эту вашу настройку раньше. Однако, к сожалению, это не сработало, и я не знаю почему.
2. Я не верю, что «проблема» заключается в моей версии gnuplot, поскольку в принципе синтаксис «transparent solid» хорошо компилируется.
3. «не сработало» не является полезным сообщением об ошибке. Что не сработало? Нет графика? Нет прозрачности? Нет заполненной области? Какая версия gnuplot? Какой выходной терминал?
4. Область с заливкой, но без прозрачности. Выходные данные задаются как «установить размер терминала png 2000,2000, улучшенный шрифт «Times-Roman, 30″» Извините, что не предоставил эту информацию раньше.
5. Вы можете использовать
set term png truecolor
либо для png-терминала на основе libgd, либоset term pngcairo
для png-терминала на основе libcairo.