F99 surface visualisation manual
I. General procedure
The two basic steps are (1) Compute vertex data for the spatial property of your choice, and (2) use Matlab to display the vertex data on the F99 surface.
For generating the vertex data, two different services are available:
- Basic CoCoMac statistics, such as number of injections, labelledsites, etc., are available through the CoCoMac2 F99 surface plotting service.
This service generates textual output in the browser, ending with a line 'vertexdata = [...]'.
Copy this line to the clipboard, and follow the instructions in section III to display it on the F99 surface using Matlab
- Graph-theoretic measures, in particular Markov centrality and In/Outdegree, are available as a downloadable Java App.
It will generate a file that contains vertex data.
Copy the contents of this file to the clipboard and follow the instructions in section III to display it on the F99 surface using Matlab
II. Using the Java App for Graph-theoretic measures
Make sure you have the latest Java Runtime Environment (JRE) installed on your system.
Steps
- Open http://cocomac.g-node.org/cocomac2/services/axonal_projections.php. This service is used for querying connectivity for the six maps specified in the Bezgin et al. paper “Hundreds of brain maps...”
- See section Input Lists. It contains lists to be input in the text areas Axon origin sites: and Axon terminal sites:. Each (or any) of these six lists (related to the maps RM, LV00, FV91, B05, BB47 and PHT00) should be copied and pasted into both text areas (see Fig. 1), so that both text areas contain the same list.
- Change Output format: to ’tab-separated file’; checkboxes are optional and described in the papers mentioned in Fig. 1.
Fig. 1. The http://cocomac.g-node.org/cocomac2/services/axonal_projections.php service screenshot.
- Click ‘Lookup’ button; name the appearing file according to the map (e.g. ‘RM_projections.tsv’) and save it to an appropriate location on your local hard disk. You can apply it to any list specified in section III. Input lists.
- Download and unzip the F99_visualiser app.
- Double-click the ‘F99_visualiser.bat’ or ‘F99_visualiser.jar’ file to launch the application. The following window will appear:
- Click any of the six buttons related to the corresponding six maps; in the Open Dialog that pops up, choose the corresponding *.tsv file:
- After applying step 7 to all maps of interest, click ‘Generate output’ button. In the Save Dialog that appears, change the output file name to a corresponding name (e.g., ‘F99_data.txt’) and save it with a *.txt extension to an appropriate location on your local hard disk. Wait until the text ‘DATA SAVED SUCCESSFULLY’ appears in the text window:
- Inside the generated output files, you find the F99 vertex data that you can plot using Matlab
Input lists
RM list:
RM-A1, RM-A2, RM-Amyg, RM-CCa, RM-CCp, RM-CCr, RM-CCs, RM-FEF, MM82a-G, RM-HC, RM-IA, RM-Ip, RM-M1, RM-PCi, RM-PCip, RM-PCm, RM-PCs, RM-PFCcl, RM-PFCdl, RM-PFCdm, RM-PFCm, RM-PFCoi, RM-PFCol, RM-PFCom, RM-PFCpol, RM-PFCvl, RM-PHC, RM-PMCdl, RM-PMCm, RM-PMCvl, RM-S1, RM-S2, RM-TCc, RM-TCi, RM-TCpol, RM-TCs, RM-TCv, RM-V1, RM-V2, RM-VACd, RM-VACv
LV00 list:
LV00a-1, LV00a-10m, LV00a-11l, LV00a-11m, W40-12, LV00a-13a, LV00a-13L, LV00a-13M, CP94-14r, LV00a-2, LV00a-23, LV00a-24a, LV00a-24d, LV00a-31, LV00a-32, LV00a-35, LV00a-36, LV00a-3a, LV00a-3b, LV00a-4, LV00a-45, LV00a-46p, LV00a-46v, LV00a-4c, LV00a-5D, LV00a-5V, LV00a-6DC, BP87-6DR, LV00a-6Ds, PG91a-6M, LV00a-6Val, LV00a-6Vam, LV00a-6Vb, LV00a-7a, LV00a-7b, LV00a-7op, LV00a-7t, LV00a-8Ac, LV00a-8Am, LV00a-8As, LV00a-9, LV00a-A1, LV00a-AIP, LV00a-DP, LV00a-ER, LV00a-FST, LV00a-G, MM82a-I, LV00a-IPa, LV00a-LIPd, LV00a-LIPv, LV00a-LOP, LV00a-MDP, LV00a-MIP, LV00a-MSTda, LV00a-MSTdp, LV00a-MSTm, LV00a-MT, JB76a-Pa, LV00a-Pi, LV00a-PIP, LV00a-PO, LV00a-PrCO, LV00a-Ri, LV00a-S2, LV00a-TAa, LV00a-TE1-3, LV00a-TE1-3d, LV00a-TE1-3v, LV00a-TEa/m, LV00a-TF, LV00a-TPOc, LV00a-TPOi, LV00a-TPOr, LV00a-Tpt, PG91b-Ts, LV00a-V1, LV00b-V2d, LV00b-V2v, LV00a-V3, LV00a-V3A, LV00a-V4, LV00a-V4ta, LV00a-V4tp, LV00a-VIPl, LV00a-VIPm, LV00a-VOT, LV00a-VP
FV91 list:
FV91-1, BP89-10, BP89-11, BP89-12, BP89-13, BP89-14, FV91-2, IAC87a-23, IAC87a-24, BP89-25, IAC87a-29, IAC87a-30, IAC87a-32, FV91-35, FV91-36, FV91-3a, FV91-3b, FV91-4, IAC87a-45, FV91-46, FV91-5, FV91-6, FV91-7a, FV91-7b, BP89-9, MB73-A1, FV91-AITd, FV91-AITv, MB73-A1, SRV88-CA1, SRV88-CA3, FV91-CITd, FV91-CITv, MB73-CM, FV91-DP, IAC87a-ER, FV91-FEF, FV91-FST, JB76a-G, FV91-Id, FV91-Ig, MB73-L, FV91-LIP, FV91-MDP, FV91-MIP, FV91-MSTd, FV91-MSTl, FV91-MT, JB76a-Pa, IAC87a-PAC, AIC87-PaS, FV91-PIP, IAC87a-Pir, FV91-PITd, FV91-PITv, FV91-PO, BP89-Pro, AIC87-PrS, YP91b-PRO, FV91-Ri, MB73-RL, AIC87-S, FV91-SII, FV91-SMA, FV91-STPa, FV91-STPp, FV91-TF, FV91-TH, FV91-V1, FV91-V2, FV91-V3, FV91-V3A, FV91-V4, FV91-V4t, FV91-VIP, FV91-VOT, FV91-VP
B05 list:
B05-1, B05-10, B05-11, B05-12, B05-13, B05-14, B05-15, B05-16, B05-17, B05-18, B05-19, B05-2, B05-20, B05-21, B05-22, B05-23, B05-24, B05-25, B05-26, B05-27, B05-28, B05-3, B05-4, B05-5, B05-6, B05-7, B05-8, B05-9
BB47 list:
BB47-FA, BB47-FB, BB47-FC, BB47-FF, BB47-FL, BB47-IA, BB47-IB, BB47-LA, BB47-LC, BB47-PE, BB47-OA, BB47-OB, BB47-OC, BB47-PA, BB47-PB, BB47-PC, BB47-PE, BB47-PF, BB47-PG, BB47-TA, BB47-TB, BB47-TC, BB47-TE, BB47-TF, BB47-TG, BB47-TH
PHT00 list:
PHT00-1, PHT00-10, PHT00-10d, PHT00-10m, PHT00-10v, PHT00-11, PHT00-11l, PHT00-11m, PHT00-13, PHT00-13a, PHT00-13L, PHT00-13M, PHT00-14M, PHT00-14O, PHT00-2, PHT00-2/1, SP91b-23, PHT00-23a, PHT00-23b, PHT00-23c, PHT00-24/23a, PHT00-24/23b, PHT00-24/23c, PHT00-24a, PHT00-24b, PHT00-24c, PHT00-24d, PHT00-25, PHT00-29a, PHT00-29a-c, PHT00-29d, PHT00-2Ve, PHT00-30, PHT00-31, PHT00-32, PHT00-35, PHT00-3a, PHT00-3b, PHT00-4, PHT00-44, PHT00-45A, PHT00-45B, PHT00-46d, PHT00-46v, PHT00-47(12), PHT00-47(12L), PHT00-47(12O), PHT00-6/32, PHT00-6DC, PHT00-6DR, PHT00-6DR, PHT00-6M, PHT00-6VC, PHT00-6VR, PHT00-8/32, PHT00-8A, PHT00-8Ad, PHT00-8Av, PHT00-8B, PHT00-9/32, PP94-9/46, PHT00-9/46d, PHT00-9/46v, PHT00-9L, PHT00-9m, PHT00-AHiMC, PHT00-AI, PHT00-AKL, PHT00-AKM, PHT00-APir, PRA87-BNST, SRV88-CA1, BB95-CA1´, SRV88-CA2, SRV88-CA3, SRV88-CA4, PHT00-DI, PHT00-DIP, PHT00-DPt, PHT00-EC, PHT00-ECL, PHT00-EI, PHT00-ELc, PHT00-ELr, AIC87-EO, PHT00-ER, PHT00-FST, PHT00-GI, PHT00-Gu, PHT00-IPa, PHT00-IPro, PHT00-JxSt, PHT00-MST, PHT00-MT, PHT00-OPAl, PHT00-OPro, PHT00-Opt, PHT00-paAc, SP78-paAlt, PHT00-paAr, PHT00-PaIM, PHT00-PaS, PHT00-PE, PHT00-PEa, PHT00-PEc, PHT00-PECg, PHT00-PFCx, PHT00-PFG, PHT00-PFop, PHT00-PG, PHT00-PGa, PHT00-PGm, PHT00-PGop, PHT00-Pir, PHT00-PO, PHT00-POa, PHT00-POaE, PHT00-POaI, PHT00-PPt, PHT00-ProK, PHT00-ProKL, PHT00-ProKM, PHT00-proM, PHT00-ProS, HM95-ProS, PHT00-PrS, PHT00-ReI, PHT00-ReIP, PHT00-reIt, PHT00-S, PHT00-S2, PHT00-S2E, PHT00-S2I, PHT00-ST1, PHT00-ST2G, PHT00-ST2S, PHT00-ST3, SP78-TAa, PHT00-TE1, PHT00-TE2, PHT00-TE3, PHT00-TEa, PHT00-TEm, PHT00-TEO, PHT00-TEOm, PHT00-TF, PHT00-TFL, PHT00-TFM, PHT00-TFO, PHT00-TH, PHT00-THO, PHT00-TL, PHT00-TLO, PHT00-TLR, PHT00-TPO, PHT00-TPOc, PHT00-TPPAl, PHT00-TPPro, PHT00-Tpt, PG91a-IG, PHT00-V1, PHT00-V2, PHT00-V3A, PHT00-V3d, PHT00-V3v, HM95-V4, PHT00-V4A, PHT00-V4d, PHT00-V4t, PHT00-V4v, BD90-ACo, BD90-VCo, BD90-VCoIf, BD90-VCoS, RAP87-NVDB
III. Plot vertex data on the F99 surface using Matlab
These instructions were tested on MATLAB Version 7.9.0.529 (R2009b).
- Open Matlab, and copy the generated vertex data into the command window. This should create one or more vectors of size 35946x1 in the Matlab workspace.
- Use any of these vectors as the sole input parameter for the Matlab routine F99_inflatedSurface.m.
Before launching it, make sure both necessary data files (F99_vertices_INFLATED.mat and F99_faces.mat) are on your Matlab path.
- As an example, the resulting figure for the ‘rm_mc’ vector should look approximately like this:
A simplified version of the Matlab routine F99_inflatedSurface.m is printed below.
function F99_inflatedSurface(vertexData)
vertices = getfield(load('F99_vertices_INFLATED'),'F99_vertices_INFLATED');
faces = getfield(load('F99_faces'),'F99_faces');
p = patch('Vertices',vertices,'Faces',faces,'FaceVertexCData',vertexData,...
'FaceColor','flat','FaceColor','interp','FaceLighting','phong',...
'EdgeColor','none');
set(gcf,'Renderer','zbuffer');
view(90,0); %lateral
camlight(-40,40);
camlight(-40,40);
material('metal');
alpha(0.5);
daspect([1 1 1]);
axis off image
colorbar
cmap = colormap;
cmap(1,:) = [0 0 0]; % vertices with the value 0 will show up as black
colormap(cmap);
IV. Contact and Acknowledgement
For feedback/troubleshoot please send a message to:
Gleb Bezgin: |  |
Rembrandt Bakker: |  |
The F99 surface is created and made available by the David van Essen lab.