Gnuplot Plot - подсвечник, но использовать линию внутри ключа?

Я использую программу C++ для автоматизации множества графиков с помощью Gnuplot. Я делаю блокпосты, используя стиль графика подсвечника, и добавляю медиану и среднее значение, добавляя измененные графики подсвечника, основываясь на примере в руководстве:

plot ’stat.dat’ using 1:3:2:6:5 with candlesticks title ’Quartiles’, \
’’              using 1:4:4:4:4 with candlesticks lt -1 notitle

Это работает, но ключ выглядит забавно, потому что Среднее и Медиана нарисованы в виде прямоугольников в ключе, даже если они отображаются в виде линий на графике. Вот пример:

введите описание изображения здесь

Есть ли простой способ сделать ключевые строки отображения вместо прямоугольников?

Возможные решения могут включать в себя построение среднего значения и медианы в виде линий вместо свечей, но мне нужно будет рассчитать позиции X каждой начальной и конечной точек. Другое решение может включать рисование ключа вручную с использованием меток и линий. Но они могут быть сложными и не очень гибкими, поэтому я подумал спросить, существуют ли какие-нибудь более простые решения.

1 ответ

Решение

Вы можете подделать ключевые записи, нанося "невидимые" линии:

set terminal pngcairo
set output "candle_lines.png"

set boxwidth 0.4 relative
set xrange [0:4]
set yrange [0:100]

plot 'stat.dat' using 1:3:2:6:5 with candlesticks title 'Quartiles', \
     ''         using 1:4:4:4:4 with candlesticks lt -1 notitle,     \
     ''         using 1:7:7:7:7 with candlesticks lt  0 notitle,     \
     NaN        with lines title "Mean" lt -1,                       \
     NaN        with lines title "Median" lt 0

Мой stat.dat:

1 40 50 63  65 70 57
2 50 60 67  75 80 63
3 30 40 53  55 60 47

Результат: средний и средний как линии

Другие вопросы по тегам