Овод строит графики в порядке возрастания оси х, а не в порядке сохраненных массивов
Я строю некоторые параметры из массива, используя Gadfly в Julia 0.6.
Вот вывод, когда я использую Geom.point. Я ожидаю, что точки будут связаны, как на этом рисунке, при использовании Geom.line, потому что точки в массиве хранятся в этом порядке.
Но когда я использую Geom.line, я получаю это:
Похоже, что Gadfly соединяет точки в порядке возрастания значений осей x независимо от порядка, сохраненного в массиве. Я не получаю такого поведения в Matlab. Мне интересно, что это за средство.
Вот фрагмент кода только для одного параметра (зеленая линия). Я уменьшил количество пунктов для удобства:
x_axis = [22.5, 22.5, 22.5, 22.5, 22.5, 22.5, 22.5, 22.5, 24.0, 30.0, 30.0, 30.0, 3.0]
y_axis = [-48, -44, -40, -36, -32, -28, -24, -20, -16,-12, -8, -4, 0]
fricPlot = plot(x = x_axis, y = y_axis,
Theme(default_color=colorant"green"), Geom.point,
Guide.xlabel("Scaled (a-b)/ Stress value"),
Guide.ylabel("Depth (m)"),
Guide.title("Rate and state friction/Stress"),
Coord.Cartesian(ymin=-24))
Как мне получить линейный график, который точно выглядит как точечный график?
0 ответов
Смотрите Geom.path в документации Gadfly. Пример:
t = 0:0.2:8pi
plot(x=t.*cos.(t), y=t.*sin.(t), Geom.path)