neurocarto.util.edit.clustering

class neurocarto.util.edit.clustering.ClusteringEdges

Edge of area.

category: int

electrode category value

shank: int

shank number

edges: list[tuple[int, int, int]]

corner code:

3 2 1
4 8 0
5 6 7

origin at bottom left.

property x: ndarray[tuple[int, ...], dtype[int64]]
property y: ndarray[tuple[int, ...], dtype[int64]]
with_shank(s)
Parameters:

s (int)

Return type:

ClusteringEdges

with_category(c)
Parameters:

c (int)

Return type:

ClusteringEdges

set_corner(tr, tl=None, bl=None, br=None)
Parameters:
  • tr (tuple[int, int]) – top-right corner position in (dx,dy).

  • tl (tuple[int, int] | None) – top-left corner position. Default use (-dx,dy).

  • bl (tuple[int, int] | None) – bottom-right corner position. Default use (dx,-dy).

  • br (tuple[int, int] | None) – bottom-left corner position. Default use (-dx,-dy).

Returns:

Return type:

ClusteringEdges

static __new__(_cls, category, shank, edges)

Create new instance of ClusteringEdges(category, shank, edges)

Parameters:
  • category (int)

  • shank (int)

  • edges (list[tuple[int, int, int]])

neurocarto.util.edit.clustering.find_clustering(self, blueprint, categories=None, *, diagonal=True)

find electrode clustering with the same category zone.

Parameters:
  • blueprint (ndarray[tuple[int, ...], dtype[int64]]) – Array[category, N]

  • categories (int | list[int] | None) – only for given categories.

  • diagonal – does surrounding includes electrodes on diagonal?

  • self (BlueprintFunctions)

Returns:

Array[int, N]

See:

BlueprintFunctions. find_clustering()

Return type:

ndarray[tuple[int, …], dtype[int64]]

neurocarto.util.edit.clustering.clustering_edges(self, blueprint, categories=None)

For each clustering, and calculate its edges.

Parameters:
  • blueprint (ndarray[tuple[int, ...], dtype[int64]])

  • categories (int | list[int] | None)

  • self (BlueprintFunctions)

Returns:

list of edge

See:

BlueprintFunctions. clustering_edges()

Return type:

list[ClusteringEdges]

neurocarto.util.edit.clustering.edge_rastering(self, edges, *, fill=False, overwrite=False)

For given edges, put them on the blueprint.

Parameters:
Returns:

blueprint

See:

BlueprintFunctions. edge_rastering()

Return type:

ndarray[tuple[int, …], dtype[int64]]