diff --git a/skais/__init__.py b/skais/__init__.py
index 834dc3a90c4fe62af22a6facecb79e16795e97fb..db0f98561e5bfd3c062c1edd63c7f4ab8c4d3720 100644
--- a/skais/__init__.py
+++ b/skais/__init__.py
@@ -1 +1 @@
-__version__ = "0.1a"
+__version__ = "0.2a"
diff --git a/skais/ais/ais_trajectory.py b/skais/ais/ais_trajectory.py
index a20abf4c22039c35f570e22ac912c57dfa95f749..f4ec956b6930cca43121640fc4e2f93a698ce915 100644
--- a/skais/ais/ais_trajectory.py
+++ b/skais/ais/ais_trajectory.py
@@ -306,7 +306,6 @@ class AISTrajectory(AISPoints):
         else:
             bounds = []
             if type(features) is list:
-                nb_channels = len(features)
                 features_vectors = self.df[features].to_numpy()
                 for c in features_vectors.T:
                     bounds.append((0, max(c)))
@@ -319,6 +318,8 @@ class AISTrajectory(AISPoints):
                 features_vectors = self.df[features.keys()].to_numpy()
             else:
                 raise TypeError("Type not supported")
+
+            nb_channels = len(features_vectors.T)
             data = np.zeros((height, width, nb_channels), dtype=np.float)
 
 
diff --git a/skais/tests/ais/test_ais_trajectory.py b/skais/tests/ais/test_ais_trajectory.py
index 56aa71cd0dfbc24deed6671584a38f7862a732e8..51d776ccfe534ef89e1784ad5936dd68b8695572 100644
--- a/skais/tests/ais/test_ais_trajectory.py
+++ b/skais/tests/ais/test_ais_trajectory.py
@@ -616,3 +616,39 @@ class TestAISTrajectoryImageGeneration(unittest.TestCase):
                              [0.25, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0.25, 0.5]]) / 2
 
         np.testing.assert_array_equal(result, expected)
+
+    def test_generate_array_from_positions_with_line_multi_channel_dict(self):
+        trajectory = AISTrajectory(
+            pd.DataFrame(
+                {
+                    "latitude": [0, 10, 0, 20],
+                    "longitude": [0, 10, 20, 20],
+                    "ts_sec": [i for i in range(4)],
+                    "sog": [10, 10, 20, 40],
+                    "cog": [40, 20, 10, 10]
+                }
+            )
+        )
+
+        result = trajectory.generate_array_from_positions(height=9, width=18, link=True, bounding_box='fit',
+                                                          features={'sog': (0, 40), 'cog': (0, 40)}, node_size=0)
+        expected = np.array([[[0, 0], [0, 0], [0, 0], [0, 0], [0, 0], [0, 0], [0, 0], [0, 0], [0, 0], [0, 0], [0, 0],
+                              [0, 0], [0, 0], [0, 0], [0, 0], [0, 0], [0, 0], [0.5, 0.25]],
+                             [[0, 0], [0, 0], [0, 0], [0, 0], [0, 0], [0, 0], [0, 0], [0, 0], [0, 0], [0, 0], [0, 0],
+                              [0, 0], [0, 0], [0, 0], [0, 0], [0, 0], [0, 0], [0.5, 0.25]],
+                             [[0, 0], [0, 0], [0, 0], [0, 0], [0, 0], [0, 0], [0, 0], [0, 0], [0, 0], [0, 0], [0, 0],
+                              [0, 0], [0, 0], [0, 0], [0, 0], [0, 0], [0, 0], [0.5, 0.25]],
+                             [[0, 0], [0, 0], [0, 0], [0, 0], [0, 0], [0, 0], [0, 0], [0, 0], [0, 0], [0, 0], [0, 0],
+                              [0, 0], [0, 0], [0, 0], [0, 0], [0, 0], [0, 0], [0.5, 0.25]],
+                             [[0, 0], [0, 0], [0, 0], [0, 0], [0, 0], [0, 0], [0, 0], [0.25, 1], [0.25, 0.5],
+                              [0.25, 0.5], [0, 0], [0, 0], [0, 0], [0, 0], [0, 0], [0, 0], [0, 0], [0.5, 0.25]],
+                             [[0, 0], [0, 0], [0, 0], [0, 0], [0, 0], [0.25, 1], [0.25, 1], [0, 0], [0, 0], [0, 0],
+                              [0.25, 0.5], [0.25, 0.5], [0, 0], [0, 0], [0, 0], [0, 0], [0, 0], [0.5, 0.25]],
+                             [[0, 0], [0, 0], [0, 0], [0.25, 1], [0.25, 1], [0, 0], [0, 0], [0, 0], [0, 0], [0, 0],
+                              [0, 0], [0, 0], [0.25, 0.5], [0.25, 0.5], [0, 0], [0, 0], [0, 0], [0.5, 0.25]],
+                             [[0, 0], [0.25, 1], [0.25, 1], [0, 0], [0, 0], [0, 0], [0, 0], [0, 0], [0, 0], [0, 0],
+                              [0, 0], [0, 0], [0, 0], [0, 0], [0.25, 0.5], [0.25, 0.5], [0, 0], [0.5, 0.25]],
+                             [[0.25, 1], [0, 0], [0, 0], [0, 0], [0, 0], [0, 0], [0, 0], [0, 0], [0, 0], [0, 0], [0, 0],
+                              [0, 0], [0, 0], [0, 0], [0, 0], [0, 0], [0.25, 0.5], [0.5, 0.25]]])
+
+        np.testing.assert_array_equal(result, expected)
\ No newline at end of file