Python, 232 223223 209 bytes
-9 bytes thanks to @Kevin Cruijssen
-11 bytes thanks to @a stone arachnid
-3 bytes thanks to @Steffan
def f(a):R=range;E=enumerate;s=[list("R=range;E=enumerate;s=[[*" "*6*len(a[0])_)for]for _ in R(4*len(a))];[s[I+3*i]4*a];[s[I+3*i].__setitem__(J+j*5,"/|-o"[2*(I%3<1)+(J%5<1)])for i,r in E(a)for j,x in E(r)if x for I in R(4)for J in R(6)];print(*map("".join,s),sep="\n")