2017-01-11 5 views
0

Я уже давно работаю с gnuplot. Недавно начал использовать его для создания отчетов для отправки клиентам. Я попытался поэкспериментировать с моим сценарием построения, но из этого не получилось.Как сделать графики gnuplot более привлекательными визуально?

Мой вопрос просто в том, как сделать графики из Gnuplot действительно потрясающими? Подумайте о выходе D3/chartjs для сравнения.

Я понимаю, что «удивительный» субъективен. Но общие указатели в этом отношении очень помогли бы!

+2

Это не только субъективно, но и зависит от многих аспектов: выход данных, тип данных, целевая аудитория и т. Д. См. http://www.gnuplotting.org для многих приятных примеров. – Christoph

+0

Я тебя слышу. Хотя gnuplotting имеет много хороших примеров, они часто имеют тип «посмотрите, что вы можете сделать с gnuplot», а не «как сделать ваш скучный пирог/гистограмму более приятным». Думаю, я должен был упомянуть о моих данных, а графики довольно простые и просто хотят узнать, есть ли у них простые способы сделать их более приятными, чем тратить часы, проходящие через настройки gnuplot. – 16tons

ответ

1

Ищите цветовые палитры, которые вам нравятся в Интернете. Один хороший источник - this.

Эксперимент с стилями границы, стилями сетки и так далее. Как только вы довольны этим, поместите элементы стиля в свой gnuplotrc.

Это мой gnuplotrc:

set encoding utf8 

# See https://github.com/Gnuplotting/gnuplot-palettes 
# Line styles (colorbrewer Set1) 
set style line 1 lc rgb '#E41A1C' pt 1 ps 1 lt 1 lw 2 # red 
set style line 2 lc rgb '#377EB8' pt 6 ps 1 lt 1 lw 2 # blue 
set style line 3 lc rgb '#4DAF4A' pt 2 ps 1 lt 1 lw 2 # green 
set style line 4 lc rgb '#984EA3' pt 3 ps 1 lt 1 lw 2 # purple 
set style line 5 lc rgb '#FF7F00' pt 4 ps 1 lt 1 lw 2 # orange 
set style line 6 lc rgb '#FFFF33' pt 5 ps 1 lt 1 lw 2 # yellow 
set style line 7 lc rgb '#A65628' pt 7 ps 1 lt 1 lw 2 # brown 
set style line 8 lc rgb '#F781BF' pt 8 ps 1 lt 1 lw 2 # pink 
# Palette 
set palette maxcolors 8 
set palette defined (0 '#E41A1C', 1 '#377EB8', 2 '#4DAF4A', 3 '#984EA3',\ 
4 '#FF7F00', 5 '#FFFF33', 6 '#A65628', 7 '#F781BF') 

# Standard border 
set style line 11 lc rgb '#808080' lt 1 lw 3 
set border 0 back ls 11 
set tics out nomirror 

# Standard grid 
set style line 12 lc rgb '#808080' lt 0 lw 1 
set grid back ls 12 
unset grid 

И это мой шаблон для GNUPLOT файлов: (. Вы должны изменить шрифт на тот, который вы имеете в наличии)

set terminal pdfcairo enhanced color dashed font "Alegreya, 14" \ 
rounded size 16 cm, 9.6 cm 

# Default encoding, line styles, pallette, border and grid are set in 
# /usr/local/share/gnuplot/x.y/gnuplotrc. 

set xlabel "x" 
set ylabel "f(x)" 
set grid 
set key right top 
set xrange[0:6.28] 
set yrange[-1:1] 
set output 'sinx.pdf' 

plot sin(x) w l ls 1, cos(x) w l ls 2 

Это выглядит так:

sin(x) and cos(x) graph

Это потрясающе? Ну I нравится думать так! Но, по всей серьезности, есть причины для этого макета.

  • Я хочу, чтобы данные были первостепенными. Вот почему граница не эмпиризована, и цвет фона отсутствует.
  • Тем не менее, я хочу, чтобы зритель увидел, где график пересекает значения, указанные на ярлыках, следовательно, видимые отметки и (ненавязчивая) сетка.

Для того, чтобы графики «вписаться» в стиль документа я, как правило, сделать пару вещей:

  1. Используйте тот же шрифт, что и текст тела моих документов.
  2. Используйте одинаковый размер, стиль линии, границы и т. Д. Для всех графиков в документе.
  3. Сопоставьте размер графика с шириной столбца или текстового блока.
+0

Это потрясающе! и действительно повинуется правилам «чем меньше чернил лучше» (теперь не может думать о имени книги). Всем удачи. – shellter

+0

Это замечательно. Большое спасибо за то, что он дал мне головной убор на этом :) – 16tons

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