Skip to content
This repository has been archived by the owner on Apr 19, 2023. It is now read-only.

SVG animations broken in the generated reports #492

Open
iabraham opened this issue Sep 5, 2022 · 0 comments
Open

SVG animations broken in the generated reports #492

iabraham opened this issue Sep 5, 2022 · 0 comments

Comments

@iabraham
Copy link

iabraham commented Sep 5, 2022

Describe the bug
There was no crash in this case. xcpEngine ran to completion. What happened though is that the animated svg files in the report didn't have all panels. Usually there are three rows for different values of z, x and y.

Cohort file
Paste cohort file between the triple backticks

id0,id1,id2,img
sub-115,ses-B,run-1,derivatives/fmriprep/sub-115/ses-B/func/sub-115_ses-B_task-rest_run-1_space-MNI152NLin2009cAsym_desc-preproc_bold.nii.gz
sub-115,ses-B,run-2,derivatives/fmriprep/sub-115/ses-B/func/sub-115_ses-B_task-rest_run-2_space-MNI152NLin2009cAsym_desc-preproc_bold.nii.gz
sub-115,ses-A,run-3,derivatives/fmriprep/sub-115/ses-A/func/sub-115_ses-A_task-rest_run-3_space-MNI152NLin2009cAsym_desc-preproc_bold.nii.gz
sub-115,ses-A,run-2,derivatives/fmriprep/sub-115/ses-A/func/sub-115_ses-A_task-rest_run-2_space-MNI152NLin2009cAsym_desc-preproc_bold.nii.gz
sub-115,ses-A,run-1,derivatives/fmriprep/sub-115/ses-A/func/sub-115_ses-A_task-rest_run-1_space-MNI152NLin2009cAsym_desc-preproc_bold.nii.gz

Design File
Paste your entire design (.dsn) file between the triple backticks

#!/usr/bin/env bash

###################################################################
#  ⊗  ⊗  ⊗  ⊗  ⊗  ⊗  ⊗  ⊗  ⊗  ⊗  ⊗  ⊗  ⊗  ⊗  ⊗  ⊗  ⊗  ⊗  ⊗  ⊗  ⊗  #
###################################################################


###################################################################
# This design file stores the values of all variables required to
# execute a complete neuroimage processing pipeline. You may
# execute the analysis specified in this design file by calling
# (in any v4 or higher bash terminal):
#
# xcpEngine -d <design> -c <cohort> -o <output> <options>
#
# Variables fall into five general categories:
# * ANALYSIS VARIABLES are used at all stages of this analysis.
# * PIPELINE specifies the modules that comprise the analysis.
# * MODULE VARIABLES are used during one stage of the analysis.
#                  These are typically array variables with array
#                  indices equal to the index of the module that
#                  calls them.
# * OUTPUT VARIABLES may be used at all stages of the analysis.
#                  These are typically array variables with array
#                  indices equal to the value of the primary
#                  subject identifier. They will appear only in
#                  localised design files.
###################################################################


###################################################################
# ANALYSIS VARIABLES
###################################################################

analysis=fc_$(whoami)
design=/data/fc-36p.dsn
sequence=anatomical
standard=MNI%2x2x2

###################################################################
# PIPELINE
###################################################################

pipeline=prestats,confound2,regress,fcon,reho,alff,roiquant,norm,qcfc

###################################################################
# 1 PRESTATS
###################################################################

prestats_rerun[1]=1
prestats_cleanup[1]=1
prestats_process[1]=FMP


###################################################################
# 2 CONFOUND2
###################################################################

confound2_rps[2]=1
confound2_rms[2]=0
confound2_wm[2]=1
confound2_csf[2]=1
confound2_gsr[2]=1
confound2_acompcor[2]=0
confound2_tcompcor[2]=0
confound2_aroma[2]=0
confound2_past[2]=0
confound2_dx[2]=1
confound2_sq[2]=2
confound2_custom[2]=
confound2_censor[2]=0
confound2_censor_contig[2]=0
confound2_rerun[2]=0
confound2_cleanup[2]=1

###################################################################
# 3  REGRESS
###################################################################

regress_tmpf[3]=butterworth
regress_hipass[3]=0.01
regress_lopass[3]=0.08
regress_tmpf_order[3]=1
regress_tmpf_pass[3]=2
regress_tmpf_ripple[3]=0.5
regress_tmpf_ripple2[3]=20
regress_dmdt[3]=2
regress_1ddt[3]=1
regress_smo[3]=6
regress_sptf[3]=susan
regress_usan[3]=default
regress_usan_space[3]=
regress_rerun[3]=0
regress_cleanup[3]=1
regress_process[3]=DMT-TMP-REG

###################################################################
# 4 FCON
###################################################################

fcon_atlas[4]=all
fcon_metric[4]=corrcoef
fcon_rerun[4]=0
fcon_cleanup[4]=1

###################################################################
# 5 REHO
###################################################################

reho_nhood[5]=vertices
reho_roikw[5]=0 # does nothing at the moment
reho_sptf[5]=susan
reho_smo[5]=6
reho_rerun[5]=0
reho_cleanup[5]=1

###################################################################
# 6 ALFF
###################################################################

alff_hipass[6]=0.01
alff_lopass[6]=0.08
alff_sptf[6]=susan
alff_smo[6]=6
alff_rerun[6]=0
alff_cleanup[6]=1

###################################################################
# 7 ROIQUANT
###################################################################

roiquant_atlas[7]=all
roiquant_globals[7]=1
roiquant_vol[7]=0
roiquant_rerun[7]=0
roiquant_cleanup[7]=1

###################################################################
# 8 NORM
###################################################################
norm_primary[8]=1
norm_rerun[8]=0
norm_cleanup[8]=1

##################################################################
# 9 QCFC
###################################################################
qcfc_atlas[9]=power264
qcfc_sig[9]=fdr
qcfc_rerun[9]=0
qcfc_cleanup[9]=1

Error message
Paste your error message between the backticks

There were no errors. 

Runtime Information
It was run through Singularity on the latest version of xcpEngine (1.2.4).

Additional context
I traced the problem down to missing transform parameters in the <g> tag in the generated SVG file. I wrote the following shell script to add these back in for my case.

#!/bin/zsh
# First argument to script is SVG image to fix

gsed -i '0,/<g><metadata>/s/<g><metadata>/<g transform="translate(0, 0) scale(1.0)"><metadata>/1' $1
gsed -i '0,/<g><metadata>/s/<g><metadata>/<g transform="translate(0, 165.0) scale(0.8461538461538461)"><metadata>/1' $1
gsed -i '0,/<g><metadata>/s/<g><metadata>/<g transform="translate(0, 304.61538461538464) scale(1.0)"><metadata>/1' $1
gsed -i '0,/<g><metadata>/s/<g><metadata>/<g transform="translate(0, 0) scale(1.0)"><metadata>/1' $1
gsed -i '0,/<g><metadata>/s/<g><metadata>/<g transform="translate(0, 165.0) scale(0.8461538461538461)"><metadata>/1' $1
gsed -i '0,/<g><metadata>/s/<g><metadata>/<g transform="translate(0, 304.61538461538464) scale(1.0)"><metadata>/1' $1

I copied these transform and scale parameters from the output generated by an older version of xcpEngine (1.2.1).

Buggy SVG below:
sub-115_ses-A_run-1_normalization

Fixed SVG below:
After running it through the script above.

sub-115_ses-A_run-1_normalization

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

No branches or pull requests

1 participant