You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
I have a question about visualizing neuron substructures and region volumes with distinct colors in a 3D view. I have two groups of neurons, and each group is labeled for soma, axon, and dendrites in SWC files. I would like to assign six different colors to represent these components for each group. Furthermore, I want to visualize them in 3D along with the region volumes. Are there function for this purpose?
Thank you in advance!
The text was updated successfully, but these errors were encountered:
Now, I have accomplished this by adding a column in neuron.nodes that contains 6 labels and the same property in volume, which can be recognized by color_by. However, the colors cannot be manually defined,they can only be defined through a palette.
ne = navis.read_swc(...)
re = navis.read_mesh(...)
for i in range(len(ne)): # To add 'AD' column to a single neuron.
ne[i].nodes.loc[(ne[i].nodes['label'] == 1)&("STR_warp" in ne.name[i]), 'AD'] = 1
ne[i].nodes.loc[(ne[i].nodes['label'] == 2)&("STR_warp" in ne.name[i]), 'AD'] = 2
ne[i].nodes.loc[(ne[i].nodes['label'] == 3)&("STR_warp" in ne.name[i]), 'AD'] = 3
ne[i].nodes.loc[(ne[i].nodes['label'] == 1)&("IN_warp" in ne.name[i]), 'AD'] = 4
ne[i].nodes.loc[(ne[i].nodes['label'] == 2)&("IN_warp" in ne.name[i]), 'AD'] = 5
ne[i].nodes.loc[(ne[i].nodes['label'] == 3)&("IN_warp" in ne.name[i]), 'AD'] = 6
re.AD=([7] * 290624) # vertices
fig=navis.plot3d([ne,re], backend='k3d',color_by="AD",palette="tab20")
You should be able to pass a dictionary as palette to set colors for specific values. For that to work your label column must be categorical instead of numerical though:
# Convert label column to strings (interpreted as categorical)forninne:
n.nodes['AD'] =n.nodes.AD.astype(str)
# Define palette (note you can also use (r, g, b) instead of "red", "blue", etc.)palette= {"1": "red", "2": "blue", "3": "green", "4": "purple", "5": "magenta", "6": "white"}
# Plotfig=navis.plot3d([ne, re], backend='k3d', color_by="AD", palette=palette)
Hi,
I have a question about visualizing neuron substructures and region volumes with distinct colors in a 3D view. I have two groups of neurons, and each group is labeled for soma, axon, and dendrites in SWC files. I would like to assign six different colors to represent these components for each group. Furthermore, I want to visualize them in 3D along with the region volumes. Are there function for this purpose?
Thank you in advance!
The text was updated successfully, but these errors were encountered: