Как мне сопоставить (x, y) одно значение? - PullRequest
0 голосов
/ 29 марта 2020

У меня есть наборы координат до и после «очистки данных», по сути, я настраиваю координаты, собранные участниками, чтобы они лучше представляли истинные значения. Я хочу сделать график, чтобы описать эффект очистки данных (верно для оси х, сообщается на оси у). Отклонение от линии идентичности представляет неточность.

Как мне express координаты как одно значение, чтобы я мог сравнить их и эффективно построить график? Или есть лучший способ express это?

Спасибо.

1 Ответ

0 голосов
/ 01 мая 2020

Звучит так, будто вы хотите получить диаграмму рассеяния с истинным значением на оси x и сообщением по оси Y Вам не нужно объединять значения в одну сущность, просто используйте соответствующие переменные на соответствующих осях при создании диаграммы рассеяния. Вы также можете добавить строку идентификатора к графику, используя синтаксис команды GPL (Graphics Programming Language).

Например, с двумя переменными «true» и «report» следующая команда создает диаграмму рассеяния с линией идентификации для данных с диапазоном 0–100:

GGRAPH
  /GRAPHDATASET NAME="graphdataset" VARIABLES=true reported MISSING=LISTWISE REPORTMISSING=NO
  /GRAPHSPEC SOURCE=INLINE
  /FITLINE TOTAL=NO.
BEGIN GPL
  SOURCE: s=userSource(id("graphdataset"))
  DATA: true=col(source(s), name("true"))
  DATA: reported=col(source(s), name("reported"))
  GUIDE: axis(dim(1), label("True Value"))
  GUIDE: axis(dim(2), label("Reported Value"))
  GUIDE: text.title(label("True and Reported Values"))
  ELEMENT: point(position(true*reported))
  DATA: x = iter(0,100,100)
  TRANS: y = eval(x)
  ELEMENT: line(position(x*y))
END GPL.

Все кроме последних трех строк прямо перед END GPL., взятых из стандартного графика рассеяния в построителе диаграмм.

DATA: x = iter(0,100,100) вычисляет внутренние данные для переменной x, которая перебирает от 0 до 100 с шагом 100. Конечно, это означает только два значения, но это все, что вам нужно для определения прямой линии.

TRANS: y = eval(x) вычисляет внутренние данные, где y = x.

ELEMENT: line(position(x*y)) строит линию на основе координат x и y.

Чтобы вы могли начать с любых имеющихся данных, используйте Построитель диаграмм, чтобы создать код диаграммы рассеяния, вставить его в окно синтаксиса и добавить операторы DATA, TRANS и ELEMENT в GPL, чтобы добавить строку. Вы, конечно, измените значения в выражении iter по мере необходимости.

...