Переменная ширина бинов с гистограммами gnuplot - PullRequest
0 голосов
/ 01 октября 2018

Я только начал изучать, как использовать gnuplot.В настоящее время мне нужно построить несколько гистограмм.У меня есть набор данных, который очень компактен и имеет длинный хвост.Конечным результатом этого является наложение блоков / xtics, где данные компактны.Одна из первых идей, которые у меня были, заключалась в том, чтобы использовать ячейки переменной ширины, чтобы попытаться контролировать интервал, но это не сработало.В конце концов, я остановился на создании графиков на основе разных сигм (например, 1σ, 2σ, 3σ и т. Д.), Которые ограничивают диапазон.Для больших сигм я изменяю тип графа на точки линий (хотя перекрывающаяся xtics по-прежнему имеет место, это делает график немного более читабельным).

Однако, делая это, он вызвал мое любопытство по поводу правильного способаделать бункеры переменной ширины.Это вообще возможно?

Вот некоторые примеры данных.Это всего лишь небольшое подмножество и, следовательно, почему есть заметные пробелы.

ITEMS   COUNT   SCALE
149     60      1
186     811     1
2986    180     2.21622
3069    189     2.21622
5827    45      3.13514
5940    37      3.13514
6189    34      4.2973
6346    32      4.2973

МАСШТАБ считается шкалой ширины бункера.Обратите внимание, что количество корректируется для масштаба.Идея в том, что более широкая ширина будет указывать на то, что в подсчете учитывается масштаб.

Настройка графика была довольно простой

set style data histogram
set style histogram cluster gap 1
set xtics rotate
plot '-' u 2:xtic(1) with boxes t '' lc rgb 'blue'

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

Как создать гистограмму с различной шириной бина

Гистограмма с использованием gnuplot?

В последнем сообщении часть, которая меня смущает, - это строка:

plot "data.dat" u (hist($1,width)):(1.0) smooth freq w boxes lc rgb"green" notitle

Я думал, что using записей были для значений X, а затем значений Y (позиция Xи высота коробки).Поэтому, когда я читаю вышеприведенную строку, она вызывает функцию hist, чтобы получить значение X, но тогда Y равно (1.0), и эта часть не имеет смысла для меня.

Даже моя линия для построения графиков смущает меня (хотя, похоже, она работает), потому что для использования я использую 2:xtic(1).Мне не понятно, почему 1:2 не работает должным образом.

Надеюсь, этот вопрос понятен.С этих выходных я пользуюсь только gnuplot, поэтому справедливо сказать, что я все еще в фазе обучения.

...