Closed RYY0722 closed 9 months ago
Hello,
I'm sorry for the late response.
This function would visualize the vector field obtained from the function commot.tl.communication_direction
which first computes a unit vector about the "signaling direction" and multiplies it by the "signaling strength" at each spot. So the length differences within the same plot give us a direct visualization of signaling strength difference. Since V describes the direction (i.e., u v in quiver plots), not the end point of the arrows, we are free to tweak the overall length scale by multiplying a scalar to V or change the scale parameter in the plotting function.
To get a sense of "signaling strength", we can simply do a row sum or column sum (for received or sent signal) on the spot-by-spot signaling matrices stored in obsp slots after you run commot.tl.spatial_communication
. Please see here for more details: https://commot.readthedocs.io/en/latest/api/commot.tl.spatial_communication.html#commot.tl.spatial_communication.
Best, Zixuan
Hi there! Thanks a lot for the great work! Congrats!! I have some questions regarding the length of the arrows in the results of
plot_cell_communication
function. Does the length indicate the strength of the signal? I guess V only contains information about the direction, but when I divided V by 2, the arrow length shrinks. However, the parameterangles
used in thematplotlib.pyplot.quiver
is not specified, which becomes "uv" by default. Then it should be representing some orientations only. I become unsure about whether the scale of matrix V matters.The function I used is
Would you please give me some advice regarding this? Can we obtain the signaling strength from your method? Thank you very much!