diff --git a/GUI/Model/Data/DataProperties.cpp b/GUI/Model/Data/DataProperties.cpp
index 9c01da9a692c0025dae3e86abf0cf6de34999c49..593c3608fe921dadbf47e163945e0771e85d56ec 100644
--- a/GUI/Model/Data/DataProperties.cpp
+++ b/GUI/Model/Data/DataProperties.cpp
@@ -31,9 +31,9 @@ const std::vector<std::pair<QString, Qt::GlobalColor>> color_queue = {
     {"Red", Qt::GlobalColor::darkRed},   {"Cyan", Qt::GlobalColor::darkCyan},
     {"Gray", Qt::GlobalColor::darkGray}, {"Magenta", Qt::GlobalColor::darkMagenta}};
 
-// some scatters for representation of 1D graphs
+// scatters for representation of 1D graphs
 const QMap<QString, QCPScatterStyle::ScatterShape> scatter_map = {
-    {"None",  QCPScatterStyle::ScatterShape::ssNone},
+    {"None", QCPScatterStyle::ScatterShape::ssNone},
     {"Disc", QCPScatterStyle::ScatterShape::ssDisc},
     {"Circle", QCPScatterStyle::ScatterShape::ssCircle},
     {"Cross", QCPScatterStyle::ScatterShape::ssCross},
@@ -41,6 +41,16 @@ const QMap<QString, QCPScatterStyle::ScatterShape> scatter_map = {
     {"Star", QCPScatterStyle::ScatterShape::ssStar}
 };
 
+// connection lines for representation of 1D graphs
+const QMap<QString, QCPGraph::LineStyle> line_map = {
+    {"None", QCPGraph::LineStyle::lsNone},
+    {"Line", QCPGraph::LineStyle::lsLine},
+    {"StepLeft", QCPGraph::LineStyle::lsStepLeft},
+    {"StepRight", QCPGraph::LineStyle::lsStepRight},
+    {"StepCenter", QCPGraph::LineStyle::lsStepCenter},
+    {"Impulse", QCPGraph::LineStyle::lsImpulse}
+};
+
 struct ColorNameComparator {
     ColorNameComparator(QString value_to_comp)
         : m_value_to_comp(std::move(value_to_comp))
@@ -72,6 +82,15 @@ ComboProperty defaultScatterCombo()
     return result;
 }
 
+ComboProperty defaultLineCombo()
+{
+    ComboProperty result;
+    for (const auto& line : line_map.keys())
+        result << line;
+    result.setValue(line_map.keys().first());
+    return result;
+}
+
 // TODO cover with unit tests and simplify
 
 QModelIndex getIndexFromPath(const SessionModel* model, const QString& path)
@@ -122,6 +141,7 @@ Data1DProperties::Data1DProperties()
 {
     addProperty(P_COLOR, defaultColorCombo().variant());
     addProperty(P_SCATTER, defaultScatterCombo().variant());
+    addProperty(P_LINE, defaultLineCombo().variant());
 }
 
 QColor Data1DProperties::color()
@@ -165,9 +185,24 @@ QCPScatterStyle::ScatterShape Data1DProperties::scatter()
     return QCPScatterStyle::ScatterShape(scatter_map.value(scatter_name));
 }
 
+QCPGraph::LineStyle Data1DProperties::line()
+{
+    const QString& line_name = getItemValue(P_LINE).value<ComboProperty>().getValue();
+    bool contains = line_map.contains(line_name);
+    ASSERT(contains);
+    return QCPGraph::LineStyle(line_map.value(line_name));
+}
+
 void Data1DProperties::setScatterProperty(const QString& scatter_name)
 {
     auto scatter_combo = defaultScatterCombo();
     scatter_combo.setValue(scatter_name);
     setItemValue(P_SCATTER, scatter_combo.variant());
 }
+
+void Data1DProperties::setLineProperty(const QString& line_name)
+{
+    auto line_combo = defaultLineCombo();
+    line_combo.setValue(line_name);
+    setItemValue(P_LINE, line_combo.variant());
+}
diff --git a/GUI/Model/Data/DataProperties.h b/GUI/Model/Data/DataProperties.h
index 20be42cbeea61058322288a60e4808f68ff8ebd5..9818b55d05c9db2efcffbde866a393b4063bf806 100644
--- a/GUI/Model/Data/DataProperties.h
+++ b/GUI/Model/Data/DataProperties.h
@@ -40,6 +40,7 @@ class Data1DProperties : public DataProperties {
 private:
     static constexpr auto P_COLOR{"Color"};
     static constexpr auto P_SCATTER{"Scatter"};
+    static constexpr auto P_LINE{"Line"};
 
 public:
     static constexpr auto M_TYPE{"DataItem1DProperties"};
@@ -58,9 +59,15 @@ public:
     //! Returns a QCP scatter object from its name
     QCPScatterStyle::ScatterShape scatter();
 
-    //! Returns set up scatter for qcustomplot.
+    //! Returns a QCP line object from its name
+    QCPGraph::LineStyle line();
+
+    //! Set up scatter for qcustomplot.
     void setScatterProperty(const QString& scatter_name);
 
+    //! Set up line for qcustomplot.
+    void setLineProperty(const QString& line_name);
+
     //! Returns the name of the color, which follows the color of passes property
     //! container. If the container is nullptr or has the last-in-queue color,
     //! Returns default color.
diff --git a/GUI/Model/Data/DataPropertyContainer.cpp b/GUI/Model/Data/DataPropertyContainer.cpp
index 59d2868e2baaa1277e3ec0b939c5dcf7423630a4..ccf9b5784a82a91e8b0f6961187f1b0c3e0229f0 100644
--- a/GUI/Model/Data/DataPropertyContainer.cpp
+++ b/GUI/Model/Data/DataPropertyContainer.cpp
@@ -68,8 +68,10 @@ void DataPropertyContainer::addItem(DataItem* data_item)
 
     if(dynamic_cast<RealDataItem*>(data_item->parent())) {
         property_item->setScatterProperty("Disc");
+        property_item->setLineProperty("None");
     } else {
         property_item->setScatterProperty("None");
+        property_item->setLineProperty("Line");
     }
 }
 
diff --git a/GUI/View/PlotComparison/Plot1D.cpp b/GUI/View/PlotComparison/Plot1D.cpp
index b31bfe4dcb5a986d3372e597528e91123cca642b..bf8fe5f7855bd93c74436834ed8ccb9dc8d89678 100644
--- a/GUI/View/PlotComparison/Plot1D.cpp
+++ b/GUI/View/PlotComparison/Plot1D.cpp
@@ -151,7 +151,7 @@ void Plot1D::initPlots()
 
     std::for_each(property_items.begin(), property_items.end(), [this](Data1DProperties* item) {
         auto* graph = m_custom_plot->addGraph();
-        graph->setLineStyle(QCPGraph::lsLine);
+        graph->setLineStyle(item->line());
         graph->setPen(QPen(item->color()));
         graph->setScatterStyle(item->scatter());
         m_graph_map[item] = graph;