netneurolab / neuromaps

A toolbox for comparing brain maps
https://netneurolab.github.io/neuromaps
Other
247 stars 55 forks source link

No visible boxplot with meta-analytical maps #167

Open Enouement opened 5 months ago

Enouement commented 5 months ago

Description of issue

Hi,

I am currently trying to integrate neurompas into my meta-analysis. However, I have the problem that when I use the meta-analytical maps, it does not show me a boxplot in the graph, but it gives me the r and p-spin values. It does not give me an error message either. When i use an activation map from a task-based fMRI experiment, everything works fine. Is it possible that the binary values of the meta-analytical maps cannot be calculated correctly?

Thanks in advance

Code of Conduct

justinehansen commented 4 months ago

Hi, I'm not sure I understand. Which function are you using?

Enouement commented 4 months ago

Dear Mr. Hansen,

sry for the late reply concerning the functions. Was on holiday and
had no access to the analyses. Enclosed is the code we use with the
set-up and the first comparison with our meta-analytic map. It should
also include a screenshot with the result we got with the first
comparison as in the code.

Best regards

!pip install git+https://github.com/netneurolab/neuromaps

from neuromaps import transforms, nulls, datasets, plotting, images, resampling print(len(datasets.available_annotations()))

import neuromaps.images

from neuromaps.stats import compare_images

import matplotlib.pyplot as plt

from neuromaps.datasets import available_annotations

gene = datasets.fetch_annotation(source='abagen') ratio = datasets.fetch_annotation(source='hcps1200', desc='myelinmap') thick = datasets.fetch_annotation(source='hcps1200', desc='thickness') deve = datasets.fetch_annotation(source='hill2010', desc='devexp') evo = datasets.fetch_annotation(source='hill2010', desc='evoexp') inter = datasets.fetch_annotation(source='mueller2013', desc='intersubjvar') cbf = datasets.fetch_annotation(source='raichle', desc='cbf') cbv = datasets.fetch_annotation(source='raichle', desc='cbv') oxy = datasets.fetch_annotation(source='raichle', desc='cmr02') glc = datasets.fetch_annotation(source='raichle', desc='cmrglc') nih = datasets.fetch_annotation(source='reardon2018', desc='scalingnih') pnc = datasets.fetch_annotation(source='reardon2018', desc='scalingpnc')

cl1 = neuromaps.images.load_nifti('cl1_ALE.nii') cl2 = neuromaps.images.load_nifti('cl2_ALE.nii') cl3 = neuromaps.images.load_nifti('cl3_ALE.nii') cl4 = neuromaps.images.load_nifti('cl4_ALE.nii') cl5 = neuromaps.images.load_nifti('cl5_ALE.nii') cl6 = neuromaps.images.load_nifti('cl6_ALE.nii')

neuromaps.datasets.fetch_all_atlases

cl_fsaverage = transforms.mni152_to_fsaverage(cl1, '10k') print(cl_fsaverage) print(images.load_data(cl_fsaverage).shape)

cl_rotated = nulls.alexander_bloch(cl_fsaverage, 'fsaverage', '10k', n_perm=1000) print(cl_rotated.shape)

r, p, nulldist = compare_images(cl_fsaverage, gene, nulls=cl_rotated, return_nulls=True) print('rho =' + str(r) + ', pspin = ' + str(p)) print(nulldist.shape)

plt.ion() plt.figure() plt.scatter(1, r) plt.boxplot(nulldist) plt.show()

liuzhenqi77 commented 1 month ago

Hi, if other maps work fine, then it's likely caused by the meta-analytic maps. However, we are unable to debug the issue without the map in question. You are welcome to upload the map (it could be a randomized map that produces the same error) so we might be able to see what's going on. Thanks.

Enouement commented 1 month ago

Hi,

here one of the meta-analytic maps.zip. thanks in advance