When applying an inverse with the dSPM method, it looks like the stc.data is all strictly positive. I am working with a comparison to FieldTrip source space data which is positive and negative. Additionally, when I plot the stc (stc.plot) it looks like there are positive and negative values mapped on to the surface of the brain. Any help on how to get these non-absolute values that show up in the plot would be appreciated.
Even your stc.plot figure looks like there are only positive values. Do you have a free orientation inverse? It could be that your STC was created to have the vector magnitude, i.e., sqrt(qx^2 + qy^2 + qz^2) of the 3 orientation components.
All the inverse parameters of make_inverse_operator are their defaults, i.e. loose = 'auto' and fixed = 'auto'. The source space was set up using the command "mne_setup_source_space --ico -6 --cps --overwrite". From the documentation, I am interpreting that this would cause the loose value to be 0.2 and therefore the constraint on the orientation is 80% fixed. The source space data is of the kind (number of sources x number of time points) so I am not sure how the three orientation components could be encoded without another dimension i.e. (sources x time points x direction).
I thought the red in the source space plot corresponded to negative values but I may be interpreting that wrong.
With loose='auto' and fixed='auto' you are right that you get a 0.2 constraint. What kind of STC files you get would be dependent on your call to apply_inverse(.), You would 3Dif you call with pick_ori='vector'. If you call with pick_ori=None (which is my guess based on your solution), then the components would be vector normed and you would get all positive. If you want a time course with the sign, you can get just the radial component along by using pick_ori='normal'.