Gnuplot XRD график, соединительные точки

У меня есть данные XRD, и когда я строю график, я хочу иметь такой график Excel-Scatter с гладкой линией, В любом случае, Excel имеет проблему с отображением слишком больших данных, и я хочу построить их с помощью Gnuplot, и вот мой код

set title "GNUPLOT RESULT"

set xlabel "Wavelength 2Theta"

set ylabel "Intensity"

set xrange [20:90]

set key right center

set terminal pngcairo size 1600, 1000 enhanced font "Arial,16"

set output "Allt-XRD.png"
plot  "AllW" using 1:2 w p pt 7 ps 2 lc rgb "orange" title "point", "AllW" using 1:2 smooth acspline lw 3 lc rgb 'blue' title 'spline'

Но что он производит, GNUPLOT он не соединяет все точки / точки, и я не знаю, но каким-то образом у него есть предпочтения (это точка веса?) для их соединения.

Вопрос

  • Как я могу соединить все точки, как видно на графике Excel с Gnuplot Заранее спасибо

PS: я перепробовал всю кучу гладкой версии acscpline' cspline' Безье и т. Д. Это не сработало

Редактировать 1: сюжетная линия, которая задается вопросом, почему я не пробую это введите описание изображения здесь

Редактировать 2: обработанный ответ пользователя 8153: использовать десятичную точку данных, а не целое число. Как сплайн, так и опция точек идеально отображают данные, как показано ниже. сплайн

Как выглядят данные XRD, они слишком длинные, поэтому я вставил только некоторые из них

Wavelength = 1.54059 Å (Cu) 
Angle       Intensity
20.00243    1467
20.02869    1533
20.05495    1482
20.08121    1468
20.10747    1376
20.13374    1421
20.16000    1433
20.18626    1380
20.21252    1431
20.23878    1405
20.26504    1357
20.29130    1374
20.31756    1413

2 ответа

Решение

Ваш with points График показывает, что ваши данные содержат только целые значения длины волны, но каждое значение имеет несколько интенсивностей, связанных с ним. Это действительно то, как должны выглядеть данные, или была какая-то ошибка, которая отбивала значения длин волн после десятичной точки? Может быть, ваш файл данных использует символ для десятичной точки, который gnuplot не распознает? Если так, используйте set decimalsign поэтому gnuplot понимает, что вы кормите его числами с плавающей запятой.

Как таковой, gnuplot делает именно то, что вы говорите, он делает все эти точки одинаковыми x координаты, и соединяет их с линиями, если вы используете with lines, которые по построению вертикали.

Вы сказали ему построить "с точками pointtype 7 pointsize 2" (сокращение "w p pt 7 ps 2"). Так оно и было. Если вы хотите, чтобы он строился линиями, то скажите "с линиями".

plot  "AllW" using 1:2 with lines lc rgb "orange" title "lines"
Другие вопросы по тегам