Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

error trying to save "hemibrain" mesh #170

Closed
slbonanno opened this issue Aug 14, 2023 · 3 comments · Fixed by #171
Closed

error trying to save "hemibrain" mesh #170

slbonanno opened this issue Aug 14, 2023 · 3 comments · Fixed by #171

Comments

@slbonanno
Copy link

Hi,

I'm able to save meshes for plotting i.e.
PVLP.mesh <- neuprint_ROI_mesh(roi="PVLP(R)")

However if I try for the hemibrain, it doesn't work:

hemibrain.mesh <- neuprint_ROI_mesh(roi="hemibrain")

Error in neuprint_check_roi(rois = roi, dataset = dataset, conn = conn, :
Regions of interest provided that are not demarcated in dataset hemibrain:v1.2.1 for server https://neuprint.janelia.org. Please call neuprint_ROIs(superLevel = NULL) to see the available ROIs.

When I run:
neuprint_ROIs(superLevel = NULL)

I can see "hemibrain" as an option

@jefferis
Copy link
Contributor

Thanks for the message and sorry you've run into trouble. I'm afraid that although hemibrain is a valid ROI there does not seem to be a mesh associated with this ROI for the dataset. If I bypass the valid ROI check and just go ahead and request the mesh I see this:

Response [https://neuprint.janelia.org/api/roimeshes/mesh/hemibrain:v1.2.1/hemibrain]
  Date: 2023-08-16 02:14
  Status: 400
  Content-Type: application/json; charset=UTF-8
  Size: 42 B
{"error":"Key \"hemibrain\" not found\n"}

So the error message is half right/half wrong: there is no hemibrain mesh to download, but it is giving the wrong code to list the available meshes. The list of available ROIs with meshes is slightly more complicated to establish and we use this internally:

> possible.rois = neuprintr::neuprint_ROIs(fromNeuronFields = TRUE, superLevel = NULL)
> possible.rois
  [1] "a'1(R)"            "a'2(R)"            "a'3(R)"           
  [4] "a'L(L)"            "a'L(R)"            "a1(R)"            
  [7] "a2(R)"             "a3(R)"             "AB(L)"            
 [10] "AB(R)"             "AL-D(L)"           "AL-D(R)"          
 [13] "AL-DA1(R)"         "AL-DA2(L)"         "AL-DA2(R)"        
 [16] "AL-DA3(L)"         "AL-DA3(R)"         "AL-DA4l(R)"       
 [19] "AL-DA4m(L)"        "AL-DA4m(R)"        "AL-DC1(L)"        
 [22] "AL-DC1(R)"         "AL-DC2(L)"         "AL-DC2(R)"        
 [25] "AL-DC3(R)"         "AL-DC4(L)"         "AL-DC4(R)"        
 [28] "AL-DL1(R)"         "AL-DL2d(R)"        "AL-DL2v(R)"       
 [31] "AL-DL3(R)"         "AL-DL4(L)"         "AL-DL4(R)"        
 [34] "AL-DL5(L)"         "AL-DL5(R)"         "AL-DM1(L)"        
 [37] "AL-DM1(R)"         "AL-DM2(L)"         "AL-DM2(R)"        
 [40] "AL-DM3(L)"         "AL-DM3(R)"         "AL-DM4(L)"        
 [43] "AL-DM4(R)"         "AL-DM5(L)"         "AL-DM5(R)"        
 [46] "AL-DM6(L)"         "AL-DM6(R)"         "AL-DP1l(R)"       
 [49] "AL-DP1m(L)"        "AL-DP1m(R)"        "AL-V(R)"          
 [52] "AL-VA1d(R)"        "AL-VA1v(R)"        "AL-VA2(R)"        
 [55] "AL-VA3(R)"         "AL-VA4(R)"         "AL-VA5(R)"        
 [58] "AL-VA6(L)"         "AL-VA6(R)"         "AL-VA7l(R)"       
 [61] "AL-VA7m(R)"        "AL-VC1(R)"         "AL-VC2(R)"        
 [64] "AL-VC3l(R)"        "AL-VC3m(R)"        "AL-VC4(R)"        
 [67] "AL-VC5(R)"         "AL-VL1(R)"         "AL-VL2a(R)"       
 [70] "AL-VL2p(R)"        "AL-VM1(R)"         "AL-VM2(R)"        
 [73] "AL-VM3(R)"         "AL-VM4(R)"         "AL-VM5d(R)"       
 [76] "AL-VM5v(R)"        "AL-VM7d(L)"        "AL-VM7d(R)"       
 [79] "AL-VM7v(L)"        "AL-VM7v(R)"        "AL-VP1d(R)"       
 [82] "AL-VP1l(R)"        "AL-VP1m(R)"        "AL-VP2(R)"        
 [85] "AL-VP3(R)"         "AL-VP4(R)"         "AL-VP5(R)"        
 [88] "aL(L)"             "AL(L)"             "aL(R)"            
 [91] "AL(R)"             "AME(R)"            "AMMC"             
 [94] "AOT(R)"            "AOTU(R)"           "ATL(L)"           
 [97] "ATL(R)"            "AVLP(R)"           "b'1(R)"           
[100] "b'2(R)"            "b'L(L)"            "b'L(R)"           
[103] "b1(R)"             "b2(R)"             "bL(L)"            
[106] "bL(R)"             "BU(L)"             "BU(R)"            
[109] "CA(L)"             "CA(R)"             "CAN(R)"           
[112] "CRE(-ROB,-RUB)(R)" "CRE(-RUB)(L)"      "CRE(L)"           
[115] "CRE(R)"            "CX"                "dACA(R)"          
[118] "EB"                "EBr1"              "EBr2r4"           
[121] "EBr3am"            "EBr3d"             "EBr3pw"           
[124] "EBr5"              "EBr6"              "EPA(L)"           
[127] "EPA(R)"            "FB"                "FB-column3"       
[130] "FBl1"              "FBl2"              "FBl3"             
[133] "FBl4"              "FBl5"              "FBl6"             
[136] "FBl7"              "FBl8"              "FBl9"             
[139] "FLA(R)"            "g1(R)"             "g2(R)"            
[142] "g3(R)"             "g4(R)"             "g5(R)"            
[145] "GA(R)"             "GC"                "GF(R)"            
[148] "gL(L)"             "gL(R)"             "GNG"              
[151] "GOR(L)"            "GOR(R)"            "IB"               
[154] "ICL(L)"            "ICL(R)"            "INP"              
[157] "IPS(R)"            "lACA(R)"           "LAL(-GA)(R)"      
[160] "LAL(L)"            "LAL(R)"            "LH(R)"            
[163] "LO(R)"             "LOP(R)"            "LX(L)"            
[166] "LX(R)"             "mALT(L)"           "mALT(R)"          
[169] "MB(+ACA)(R)"       "MB(L)"             "MB(R)"            
[172] "ME(R)"             "mito"              "NO"               
[175] "NO(L)"             "NO(R)"             "NO1(L)"           
[178] "NO1(R)"            "NO2(L)"            "NO2(R)"           
[181] "NO3(L)"            "NO3(R)"            "notes"            
[184] "OL(R)"             "PB"                "PB(L1)"           
[187] "PB(L2)"            "PB(L3)"            "PB(L4)"           
[190] "PB(L5)"            "PB(L6)"            "PB(L7)"           
[193] "PB(L8)"            "PB(L9)"            "PB(R1)"           
[196] "PB(R2)"            "PB(R3)"            "PB(R4)"           
[199] "PB(R5)"            "PB(R6)"            "PB(R7)"           
[202] "PB(R8)"            "PB(R9)"            "PED(R)"           
[205] "PENP"              "PLP(R)"            "POC"              
[208] "PRW"               "PVLP(R)"           "ROB(R)"           
[211] "RUB(L)"            "RUB(R)"            "SAD"              
[214] "SAD(-AMMC)"        "SCL(L)"            "SCL(R)"           
[217] "SIP(L)"            "SIP(R)"            "SLP(R)"           
[220] "SMP(L)"            "SMP(R)"            "SNP(L)"           
[223] "SNP(R)"            "SPS(L)"            "SPS(R)"           
[226] "vACA(R)"           "VES(L)"            "VES(R)"           
[229] "VLNP(R)"           "VMNP"              "WED(R)"

I am not sure why the hemibrain mesh is not available but you could ask over at https://groups.google.com/g/neuprint. Finally to get a hemibrain mesh right now, you can use the hemibrain.surf or hemibrain_microns.surf object bundled with the hemibrainr package.

@slbonanno
Copy link
Author

slbonanno commented Aug 16, 2023 via email

@jefferis
Copy link
Contributor

Great. Glad that worked out, Shivan. Note that the neuprint google group is for users of the neuprint API and interactive website both available at https://neuprint.janelia.org/.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging a pull request may close this issue.

2 participants