@@ -35,8 +35,11 @@ points2DRelation rel = relFold folder [] rel
3535 where
3636 folder tup acc = (intFromAtomIndex 0 tup, intFromAtomIndex 1 tup) : acc
3737
38−graph3DRelation :: Relation -> Graph3D Double Double Double
39−graph3DRelation rel = Data3D [Title "rel"] [StepX 1.0, StepY 1.0] $ map (\(x,y,z) -> (fromIntegral x, fromIntegral y, fromIntegral z)) $ points3DRelation rel
38+graph3DRelation :: Relation -> [Graph3D Double Double Double]
39+graph3DRelation rel = map lineGraph $ points3DRelation rel
40+ where
41+ lineGraph (x,y,z) = Data3D [Title "rel", Style Lines] [StepX 1.0, StepY 1.0] $ [(fromIntegral x, fromIntegral y, fromIntegral z),
42+ (fromIntegral x, 0, 0)]
4043
4144points3DRelation :: Relation -> [(Int, Int, Int)]
4245points3DRelation rel = relFold folder [] rel
@@ -60,7 +63,7 @@ sample3dRelation = case mkRelationFromList (A.attributesFromList [Attribute "x"
6063type G2D = Graph2D Double Double
6164type G3D = Graph3D Double Double Double
6265
63−plotRelation :: Relation -> Either PlotError (Either G2D G3D)
66+plotRelation :: Relation -> Either PlotError (Either G2D [G3D])
6467plotRelation rel = let attrTypes = V.replicate (arity rel) IntAtomType in
6568 if attrTypes /= A.atomTypes (attributes rel) then
6669 Left InvalidAttributeTypeError