plotfig 1.8.0__tar.gz → 1.9.0__tar.gz

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (214) hide show
  1. {plotfig-1.8.0 → plotfig-1.9.0}/.gitignore +1 -2
  2. plotfig-1.9.0/.release-please-manifest.json +1 -0
  3. plotfig-1.9.0/CHANGELOG.md +242 -0
  4. {plotfig-1.8.0 → plotfig-1.9.0}/PKG-INFO +3 -3
  5. {plotfig-1.8.0 → plotfig-1.9.0}/README.md +2 -2
  6. {plotfig-1.8.0 → plotfig-1.9.0}/docs/installation.md +2 -2
  7. {plotfig-1.8.0 → plotfig-1.9.0}/pyproject.toml +1 -1
  8. {plotfig-1.8.0 → plotfig-1.9.0}/src/plotfig/__init__.py +8 -1
  9. {plotfig-1.8.0 → plotfig-1.9.0}/src/plotfig/bar.py +1 -1
  10. {plotfig-1.8.0 → plotfig-1.9.0}/src/plotfig/brain_connection.py +100 -0
  11. {plotfig-1.8.0 → plotfig-1.9.0}/src/plotfig/correlation.py +1 -1
  12. plotfig-1.9.0/tests/test.py +12 -0
  13. plotfig-1.8.0/.release-please-manifest.json +0 -1
  14. plotfig-1.8.0/CHANGELOG.md +0 -173
  15. plotfig-1.8.0/tests/test.py +0 -17
  16. {plotfig-1.8.0 → plotfig-1.9.0}/.github/workflows/dependency_review.yml +0 -0
  17. {plotfig-1.8.0 → plotfig-1.9.0}/.github/workflows/python_publish.yml +0 -0
  18. {plotfig-1.8.0 → plotfig-1.9.0}/.github/workflows/release.yml +0 -0
  19. {plotfig-1.8.0 → plotfig-1.9.0}/.github/workflows/summary_new_issues.yml +0 -0
  20. {plotfig-1.8.0 → plotfig-1.9.0}/.github/workflows/sync_to_gitee.yml +0 -0
  21. {plotfig-1.8.0 → plotfig-1.9.0}/.github/workflows/website_deploy_dev.yml +0 -0
  22. {plotfig-1.8.0 → plotfig-1.9.0}/.github/workflows/website_deploy_release.yml +0 -0
  23. {plotfig-1.8.0 → plotfig-1.9.0}/.python-version +0 -0
  24. {plotfig-1.8.0 → plotfig-1.9.0}/LICENSE +0 -0
  25. {plotfig-1.8.0 → plotfig-1.9.0}/docs/api/index.md +0 -0
  26. {plotfig-1.8.0 → plotfig-1.9.0}/docs/assets/atlas_csv/chimpanzee_bna.csv +0 -0
  27. {plotfig-1.8.0 → plotfig-1.9.0}/docs/assets/atlas_csv/human_bna.csv +0 -0
  28. {plotfig-1.8.0 → plotfig-1.9.0}/docs/assets/atlas_csv/human_glasser.csv +0 -0
  29. {plotfig-1.8.0 → plotfig-1.9.0}/docs/assets/atlas_csv/macaque_bna.csv +0 -0
  30. {plotfig-1.8.0 → plotfig-1.9.0}/docs/assets/atlas_csv/macaque_charm5.csv +0 -0
  31. {plotfig-1.8.0 → plotfig-1.9.0}/docs/assets/atlas_csv/macaque_charm6.csv +0 -0
  32. {plotfig-1.8.0 → plotfig-1.9.0}/docs/assets/atlas_csv/macaque_d99.csv +0 -0
  33. {plotfig-1.8.0 → plotfig-1.9.0}/docs/assets/plotfig.png +0 -0
  34. {plotfig-1.8.0 → plotfig-1.9.0}/docs/changelog.md +0 -0
  35. {plotfig-1.8.0 → plotfig-1.9.0}/docs/index.md +0 -0
  36. {plotfig-1.8.0 → plotfig-1.9.0}/docs/usage/brain_connectivity.md +0 -0
  37. {plotfig-1.8.0 → plotfig-1.9.0}/docs/usage/brain_connectivity_files/human.gif +0 -0
  38. {plotfig-1.8.0 → plotfig-1.9.0}/docs/usage/brain_surface.md +0 -0
  39. {plotfig-1.8.0 → plotfig-1.9.0}/docs/usage/brain_surface_files/brain_surface_10_0.png +0 -0
  40. {plotfig-1.8.0 → plotfig-1.9.0}/docs/usage/brain_surface_files/brain_surface_10_1.png +0 -0
  41. {plotfig-1.8.0 → plotfig-1.9.0}/docs/usage/brain_surface_files/brain_surface_11_0.png +0 -0
  42. {plotfig-1.8.0 → plotfig-1.9.0}/docs/usage/brain_surface_files/brain_surface_12_0.png +0 -0
  43. {plotfig-1.8.0 → plotfig-1.9.0}/docs/usage/brain_surface_files/brain_surface_13_0.png +0 -0
  44. {plotfig-1.8.0 → plotfig-1.9.0}/docs/usage/brain_surface_files/brain_surface_13_1.png +0 -0
  45. {plotfig-1.8.0 → plotfig-1.9.0}/docs/usage/brain_surface_files/brain_surface_14_0.png +0 -0
  46. {plotfig-1.8.0 → plotfig-1.9.0}/docs/usage/brain_surface_files/brain_surface_14_1.png +0 -0
  47. {plotfig-1.8.0 → plotfig-1.9.0}/docs/usage/brain_surface_files/brain_surface_15_0.png +0 -0
  48. {plotfig-1.8.0 → plotfig-1.9.0}/docs/usage/brain_surface_files/brain_surface_16_0.png +0 -0
  49. {plotfig-1.8.0 → plotfig-1.9.0}/docs/usage/brain_surface_files/brain_surface_17_0.png +0 -0
  50. {plotfig-1.8.0 → plotfig-1.9.0}/docs/usage/brain_surface_files/brain_surface_18_0.png +0 -0
  51. {plotfig-1.8.0 → plotfig-1.9.0}/docs/usage/brain_surface_files/brain_surface_19_0.png +0 -0
  52. {plotfig-1.8.0 → plotfig-1.9.0}/docs/usage/brain_surface_files/brain_surface_20_0.png +0 -0
  53. {plotfig-1.8.0 → plotfig-1.9.0}/docs/usage/brain_surface_files/brain_surface_21_0.png +0 -0
  54. {plotfig-1.8.0 → plotfig-1.9.0}/docs/usage/brain_surface_files/brain_surface_23_0.png +0 -0
  55. {plotfig-1.8.0 → plotfig-1.9.0}/docs/usage/brain_surface_files/brain_surface_24_0.png +0 -0
  56. {plotfig-1.8.0 → plotfig-1.9.0}/docs/usage/brain_surface_files/brain_surface_25_0.png +0 -0
  57. {plotfig-1.8.0 → plotfig-1.9.0}/docs/usage/brain_surface_files/brain_surface_4_0.png +0 -0
  58. {plotfig-1.8.0 → plotfig-1.9.0}/docs/usage/brain_surface_files/brain_surface_5_0.png +0 -0
  59. {plotfig-1.8.0 → plotfig-1.9.0}/docs/usage/brain_surface_files/brain_surface_6_0.png +0 -0
  60. {plotfig-1.8.0 → plotfig-1.9.0}/docs/usage/brain_surface_files/brain_surface_6_1.png +0 -0
  61. {plotfig-1.8.0 → plotfig-1.9.0}/docs/usage/brain_surface_files/brain_surface_7_0.png +0 -0
  62. {plotfig-1.8.0 → plotfig-1.9.0}/docs/usage/brain_surface_files/brain_surface_7_1.png +0 -0
  63. {plotfig-1.8.0 → plotfig-1.9.0}/docs/usage/brain_surface_files/brain_surface_8_0.png +0 -0
  64. {plotfig-1.8.0 → plotfig-1.9.0}/docs/usage/brain_surface_files/brain_surface_8_1.png +0 -0
  65. {plotfig-1.8.0 → plotfig-1.9.0}/docs/usage/brain_surface_files/brain_surface_9_0.png +0 -0
  66. {plotfig-1.8.0 → plotfig-1.9.0}/docs/usage/brain_surface_files/brain_surface_9_1.png +0 -0
  67. {plotfig-1.8.0 → plotfig-1.9.0}/docs/usage/circos.md +0 -0
  68. {plotfig-1.8.0 → plotfig-1.9.0}/docs/usage/circos_files/circos_11_0.png +0 -0
  69. {plotfig-1.8.0 → plotfig-1.9.0}/docs/usage/circos_files/circos_13_1.png +0 -0
  70. {plotfig-1.8.0 → plotfig-1.9.0}/docs/usage/circos_files/circos_1_0.png +0 -0
  71. {plotfig-1.8.0 → plotfig-1.9.0}/docs/usage/circos_files/circos_3_0.png +0 -0
  72. {plotfig-1.8.0 → plotfig-1.9.0}/docs/usage/circos_files/circos_5_0.png +0 -0
  73. {plotfig-1.8.0 → plotfig-1.9.0}/docs/usage/circos_files/circos_7_0.png +0 -0
  74. {plotfig-1.8.0 → plotfig-1.9.0}/docs/usage/circos_files/circos_9_0.png +0 -0
  75. {plotfig-1.8.0 → plotfig-1.9.0}/docs/usage/correlation.md +0 -0
  76. {plotfig-1.8.0 → plotfig-1.9.0}/docs/usage/correlation_files/correlation_2_0.png +0 -0
  77. {plotfig-1.8.0 → plotfig-1.9.0}/docs/usage/correlation_files/correlation_3_0.png +0 -0
  78. {plotfig-1.8.0 → plotfig-1.9.0}/docs/usage/correlation_files/correlation_4_0.png +0 -0
  79. {plotfig-1.8.0 → plotfig-1.9.0}/docs/usage/correlation_files/correlation_5_0.png +0 -0
  80. {plotfig-1.8.0 → plotfig-1.9.0}/docs/usage/correlation_files/correlation_6_0.png +0 -0
  81. {plotfig-1.8.0 → plotfig-1.9.0}/docs/usage/correlation_files/correlation_7_0.png +0 -0
  82. {plotfig-1.8.0 → plotfig-1.9.0}/docs/usage/correlation_files/correlation_8_0.png +0 -0
  83. {plotfig-1.8.0 → plotfig-1.9.0}/docs/usage/correlation_files/correlation_9_0.png +0 -0
  84. {plotfig-1.8.0 → plotfig-1.9.0}/docs/usage/matrix.md +0 -0
  85. {plotfig-1.8.0 → plotfig-1.9.0}/docs/usage/matrix_files/matrix_2_1.png +0 -0
  86. {plotfig-1.8.0 → plotfig-1.9.0}/docs/usage/matrix_files/matrix_3_0.png +0 -0
  87. {plotfig-1.8.0 → plotfig-1.9.0}/docs/usage/matrix_files/matrix_4_0.png +0 -0
  88. {plotfig-1.8.0 → plotfig-1.9.0}/docs/usage/matrix_files/matrix_5_1.png +0 -0
  89. {plotfig-1.8.0 → plotfig-1.9.0}/docs/usage/matrix_files/matrix_6_0.png +0 -0
  90. {plotfig-1.8.0 → plotfig-1.9.0}/docs/usage/matrix_files/matrix_7_0.png +0 -0
  91. {plotfig-1.8.0 → plotfig-1.9.0}/docs/usage/multi_groups.md +0 -0
  92. {plotfig-1.8.0 → plotfig-1.9.0}/docs/usage/multi_groups_files/multi_groups_2_0.png +0 -0
  93. {plotfig-1.8.0 → plotfig-1.9.0}/docs/usage/multi_groups_files/multi_groups_3_0.png +0 -0
  94. {plotfig-1.8.0 → plotfig-1.9.0}/docs/usage/multi_groups_files/multi_groups_5_0.png +0 -0
  95. {plotfig-1.8.0 → plotfig-1.9.0}/docs/usage/multi_groups_files/multi_groups_6_0.png +0 -0
  96. {plotfig-1.8.0 → plotfig-1.9.0}/docs/usage/multi_groups_files/multi_groups_8_0.png +0 -0
  97. {plotfig-1.8.0 → plotfig-1.9.0}/docs/usage/multi_groups_files/multi_groups_9_0.png +0 -0
  98. {plotfig-1.8.0 → plotfig-1.9.0}/docs/usage/single_group.md +0 -0
  99. {plotfig-1.8.0 → plotfig-1.9.0}/docs/usage/single_group_files/single_group_11_0.png +0 -0
  100. {plotfig-1.8.0 → plotfig-1.9.0}/docs/usage/single_group_files/single_group_12_0.png +0 -0
  101. {plotfig-1.8.0 → plotfig-1.9.0}/docs/usage/single_group_files/single_group_13_0.png +0 -0
  102. {plotfig-1.8.0 → plotfig-1.9.0}/docs/usage/single_group_files/single_group_14_0.png +0 -0
  103. {plotfig-1.8.0 → plotfig-1.9.0}/docs/usage/single_group_files/single_group_16_0.png +0 -0
  104. {plotfig-1.8.0 → plotfig-1.9.0}/docs/usage/single_group_files/single_group_17_0.png +0 -0
  105. {plotfig-1.8.0 → plotfig-1.9.0}/docs/usage/single_group_files/single_group_19_0.png +0 -0
  106. {plotfig-1.8.0 → plotfig-1.9.0}/docs/usage/single_group_files/single_group_20_0.png +0 -0
  107. {plotfig-1.8.0 → plotfig-1.9.0}/docs/usage/single_group_files/single_group_21_0.png +0 -0
  108. {plotfig-1.8.0 → plotfig-1.9.0}/docs/usage/single_group_files/single_group_22_0.png +0 -0
  109. {plotfig-1.8.0 → plotfig-1.9.0}/docs/usage/single_group_files/single_group_23_0.png +0 -0
  110. {plotfig-1.8.0 → plotfig-1.9.0}/docs/usage/single_group_files/single_group_24_0.png +0 -0
  111. {plotfig-1.8.0 → plotfig-1.9.0}/docs/usage/single_group_files/single_group_25_0.png +0 -0
  112. {plotfig-1.8.0 → plotfig-1.9.0}/docs/usage/single_group_files/single_group_26_0.png +0 -0
  113. {plotfig-1.8.0 → plotfig-1.9.0}/docs/usage/single_group_files/single_group_27_0.png +0 -0
  114. {plotfig-1.8.0 → plotfig-1.9.0}/docs/usage/single_group_files/single_group_28_0.png +0 -0
  115. {plotfig-1.8.0 → plotfig-1.9.0}/docs/usage/single_group_files/single_group_2_0.png +0 -0
  116. {plotfig-1.8.0 → plotfig-1.9.0}/docs/usage/single_group_files/single_group_30_0.png +0 -0
  117. {plotfig-1.8.0 → plotfig-1.9.0}/docs/usage/single_group_files/single_group_31_0.png +0 -0
  118. {plotfig-1.8.0 → plotfig-1.9.0}/docs/usage/single_group_files/single_group_33_0.png +0 -0
  119. {plotfig-1.8.0 → plotfig-1.9.0}/docs/usage/single_group_files/single_group_34_0.png +0 -0
  120. {plotfig-1.8.0 → plotfig-1.9.0}/docs/usage/single_group_files/single_group_35_0.png +0 -0
  121. {plotfig-1.8.0 → plotfig-1.9.0}/docs/usage/single_group_files/single_group_36_0.png +0 -0
  122. {plotfig-1.8.0 → plotfig-1.9.0}/docs/usage/single_group_files/single_group_37_0.png +0 -0
  123. {plotfig-1.8.0 → plotfig-1.9.0}/docs/usage/single_group_files/single_group_39_0.png +0 -0
  124. {plotfig-1.8.0 → plotfig-1.9.0}/docs/usage/single_group_files/single_group_3_0.png +0 -0
  125. {plotfig-1.8.0 → plotfig-1.9.0}/docs/usage/single_group_files/single_group_40_0.png +0 -0
  126. {plotfig-1.8.0 → plotfig-1.9.0}/docs/usage/single_group_files/single_group_5_0.png +0 -0
  127. {plotfig-1.8.0 → plotfig-1.9.0}/docs/usage/single_group_files/single_group_6_0.png +0 -0
  128. {plotfig-1.8.0 → plotfig-1.9.0}/docs/usage/single_group_files/single_group_6_1.png +0 -0
  129. {plotfig-1.8.0 → plotfig-1.9.0}/docs/usage/single_group_files/single_group_7_0.png +0 -0
  130. {plotfig-1.8.0 → plotfig-1.9.0}/docs/usage/single_group_files/single_group_8_0.png +0 -0
  131. {plotfig-1.8.0 → plotfig-1.9.0}/mkdocs.yml +0 -0
  132. {plotfig-1.8.0 → plotfig-1.9.0}/notebooks/brain_connectivity.ipynb +0 -0
  133. {plotfig-1.8.0 → plotfig-1.9.0}/notebooks/brain_surface.ipynb +0 -0
  134. {plotfig-1.8.0 → plotfig-1.9.0}/notebooks/circos.ipynb +0 -0
  135. {plotfig-1.8.0 → plotfig-1.9.0}/notebooks/correlation.ipynb +0 -0
  136. {plotfig-1.8.0 → plotfig-1.9.0}/notebooks/matrix.ipynb +0 -0
  137. {plotfig-1.8.0 → plotfig-1.9.0}/notebooks/multi_groups.ipynb +0 -0
  138. {plotfig-1.8.0 → plotfig-1.9.0}/notebooks/single_group.ipynb +0 -0
  139. {plotfig-1.8.0 → plotfig-1.9.0}/overrides/main.html +0 -0
  140. {plotfig-1.8.0 → plotfig-1.9.0}/release-please-config.json +0 -0
  141. {plotfig-1.8.0 → plotfig-1.9.0}/src/plotfig/brain_surface.py +0 -0
  142. {plotfig-1.8.0 → plotfig-1.9.0}/src/plotfig/circos.py +0 -0
  143. {plotfig-1.8.0 → plotfig-1.9.0}/src/plotfig/data/atlas_tables/chimpanzee_bna.csv +0 -0
  144. {plotfig-1.8.0 → plotfig-1.9.0}/src/plotfig/data/atlas_tables/human_bna.csv +0 -0
  145. {plotfig-1.8.0 → plotfig-1.9.0}/src/plotfig/data/atlas_tables/human_glasser.csv +0 -0
  146. {plotfig-1.8.0 → plotfig-1.9.0}/src/plotfig/data/atlas_tables/macaque_bna.csv +0 -0
  147. {plotfig-1.8.0 → plotfig-1.9.0}/src/plotfig/data/atlas_tables/macaque_charm5.csv +0 -0
  148. {plotfig-1.8.0 → plotfig-1.9.0}/src/plotfig/data/atlas_tables/macaque_charm5_add_13_sgms.csv +0 -0
  149. {plotfig-1.8.0 → plotfig-1.9.0}/src/plotfig/data/atlas_tables/macaque_charm6.csv +0 -0
  150. {plotfig-1.8.0 → plotfig-1.9.0}/src/plotfig/data/atlas_tables/macaque_d99.csv +0 -0
  151. {plotfig-1.8.0 → plotfig-1.9.0}/src/plotfig/data/neurodata/atlases/chimpanzee_BNA/ChimpBNA.L.32k_fs_LR.label.gii +0 -0
  152. {plotfig-1.8.0 → plotfig-1.9.0}/src/plotfig/data/neurodata/atlases/chimpanzee_BNA/ChimpBNA.R.32k_fs_LR.label.gii +0 -0
  153. {plotfig-1.8.0 → plotfig-1.9.0}/src/plotfig/data/neurodata/atlases/human_BNA/fsaverage.L.BNA.32k_fs_LR.label.gii +0 -0
  154. {plotfig-1.8.0 → plotfig-1.9.0}/src/plotfig/data/neurodata/atlases/human_BNA/fsaverage.R.BNA.32k_fs_LR.label.gii +0 -0
  155. {plotfig-1.8.0 → plotfig-1.9.0}/src/plotfig/data/neurodata/atlases/human_Glasser/fsaverage.L.Glasser.32k_fs_LR.label.gii +0 -0
  156. {plotfig-1.8.0 → plotfig-1.9.0}/src/plotfig/data/neurodata/atlases/human_Glasser/fsaverage.R.Glasser.32k_fs_LR.label.gii +0 -0
  157. {plotfig-1.8.0 → plotfig-1.9.0}/src/plotfig/data/neurodata/atlases/macaque_BNA/MBNA_124_32k_L.label.gii +0 -0
  158. {plotfig-1.8.0 → plotfig-1.9.0}/src/plotfig/data/neurodata/atlases/macaque_BNA/MBNA_124_32k_R.label.gii +0 -0
  159. {plotfig-1.8.0 → plotfig-1.9.0}/src/plotfig/data/neurodata/atlases/macaque_CHARM5/L.charm5.label.gii +0 -0
  160. {plotfig-1.8.0 → plotfig-1.9.0}/src/plotfig/data/neurodata/atlases/macaque_CHARM5/R.charm5.label.gii +0 -0
  161. {plotfig-1.8.0 → plotfig-1.9.0}/src/plotfig/data/neurodata/atlases/macaque_CHARM6/L.charm6.label.gii +0 -0
  162. {plotfig-1.8.0 → plotfig-1.9.0}/src/plotfig/data/neurodata/atlases/macaque_CHARM6/R.charm6.label.gii +0 -0
  163. {plotfig-1.8.0 → plotfig-1.9.0}/src/plotfig/data/neurodata/atlases/macaque_D99/L.d99.label.gii +0 -0
  164. {plotfig-1.8.0 → plotfig-1.9.0}/src/plotfig/data/neurodata/atlases/macaque_D99/R.d99.label.gii +0 -0
  165. {plotfig-1.8.0 → plotfig-1.9.0}/src/plotfig/data/neurodata/surfaces/chimpanzee_BNA/ChimpYerkes29_v1.2.L.midthickness.32k_fs_LR.surf.gii +0 -0
  166. {plotfig-1.8.0 → plotfig-1.9.0}/src/plotfig/data/neurodata/surfaces/chimpanzee_BNA/ChimpYerkes29_v1.2.L.veryinflated.32k_fs_LR.surf.gii +0 -0
  167. {plotfig-1.8.0 → plotfig-1.9.0}/src/plotfig/data/neurodata/surfaces/chimpanzee_BNA/ChimpYerkes29_v1.2.R.midthickness.32k_fs_LR.surf.gii +0 -0
  168. {plotfig-1.8.0 → plotfig-1.9.0}/src/plotfig/data/neurodata/surfaces/chimpanzee_BNA/ChimpYerkes29_v1.2.R.veryinflated.32k_fs_LR.surf.gii +0 -0
  169. {plotfig-1.8.0 → plotfig-1.9.0}/src/plotfig/data/neurodata/surfaces/human_fsLR/README.md +0 -0
  170. {plotfig-1.8.0 → plotfig-1.9.0}/src/plotfig/data/neurodata/surfaces/human_fsLR/tpl-fsLR_den-32k_hemi-L_desc-nomedialwall_dparc.label.gii +0 -0
  171. {plotfig-1.8.0 → plotfig-1.9.0}/src/plotfig/data/neurodata/surfaces/human_fsLR/tpl-fsLR_den-32k_hemi-L_desc-sulc_midthickness.shape.gii +0 -0
  172. {plotfig-1.8.0 → plotfig-1.9.0}/src/plotfig/data/neurodata/surfaces/human_fsLR/tpl-fsLR_den-32k_hemi-L_desc-vaavg_midthickness.shape.gii +0 -0
  173. {plotfig-1.8.0 → plotfig-1.9.0}/src/plotfig/data/neurodata/surfaces/human_fsLR/tpl-fsLR_den-32k_hemi-L_inflated.surf.gii +0 -0
  174. {plotfig-1.8.0 → plotfig-1.9.0}/src/plotfig/data/neurodata/surfaces/human_fsLR/tpl-fsLR_den-32k_hemi-L_midthickness.surf.gii +0 -0
  175. {plotfig-1.8.0 → plotfig-1.9.0}/src/plotfig/data/neurodata/surfaces/human_fsLR/tpl-fsLR_den-32k_hemi-L_sphere.surf.gii +0 -0
  176. {plotfig-1.8.0 → plotfig-1.9.0}/src/plotfig/data/neurodata/surfaces/human_fsLR/tpl-fsLR_den-32k_hemi-L_veryinflated.surf.gii +0 -0
  177. {plotfig-1.8.0 → plotfig-1.9.0}/src/plotfig/data/neurodata/surfaces/human_fsLR/tpl-fsLR_den-32k_hemi-R_desc-nomedialwall_dparc.label.gii +0 -0
  178. {plotfig-1.8.0 → plotfig-1.9.0}/src/plotfig/data/neurodata/surfaces/human_fsLR/tpl-fsLR_den-32k_hemi-R_desc-sulc_midthickness.shape.gii +0 -0
  179. {plotfig-1.8.0 → plotfig-1.9.0}/src/plotfig/data/neurodata/surfaces/human_fsLR/tpl-fsLR_den-32k_hemi-R_desc-vaavg_midthickness.shape.gii +0 -0
  180. {plotfig-1.8.0 → plotfig-1.9.0}/src/plotfig/data/neurodata/surfaces/human_fsLR/tpl-fsLR_den-32k_hemi-R_inflated.surf.gii +0 -0
  181. {plotfig-1.8.0 → plotfig-1.9.0}/src/plotfig/data/neurodata/surfaces/human_fsLR/tpl-fsLR_den-32k_hemi-R_midthickness.surf.gii +0 -0
  182. {plotfig-1.8.0 → plotfig-1.9.0}/src/plotfig/data/neurodata/surfaces/human_fsLR/tpl-fsLR_den-32k_hemi-R_sphere.surf.gii +0 -0
  183. {plotfig-1.8.0 → plotfig-1.9.0}/src/plotfig/data/neurodata/surfaces/human_fsLR/tpl-fsLR_den-32k_hemi-R_veryinflated.surf.gii +0 -0
  184. {plotfig-1.8.0 → plotfig-1.9.0}/src/plotfig/data/neurodata/surfaces/human_fsLR/tpl-fsLR_space-fsaverage_den-32k_hemi-L_sphere.surf.gii +0 -0
  185. {plotfig-1.8.0 → plotfig-1.9.0}/src/plotfig/data/neurodata/surfaces/human_fsLR/tpl-fsLR_space-fsaverage_den-32k_hemi-R_sphere.surf.gii +0 -0
  186. {plotfig-1.8.0 → plotfig-1.9.0}/src/plotfig/data/neurodata/surfaces/macaque_BNA/civm.L.inflated.32k_fs_LR.surf.gii +0 -0
  187. {plotfig-1.8.0 → plotfig-1.9.0}/src/plotfig/data/neurodata/surfaces/macaque_BNA/civm.L.midthickness.32k_fs_LR.surf.gii +0 -0
  188. {plotfig-1.8.0 → plotfig-1.9.0}/src/plotfig/data/neurodata/surfaces/macaque_BNA/civm.L.pial.32k_fs_LR.surf.gii +0 -0
  189. {plotfig-1.8.0 → plotfig-1.9.0}/src/plotfig/data/neurodata/surfaces/macaque_BNA/civm.L.veryinflated.32k_fs_LR.surf.gii +0 -0
  190. {plotfig-1.8.0 → plotfig-1.9.0}/src/plotfig/data/neurodata/surfaces/macaque_BNA/civm.L.white.32k_fs_LR.surf.gii +0 -0
  191. {plotfig-1.8.0 → plotfig-1.9.0}/src/plotfig/data/neurodata/surfaces/macaque_BNA/civm.R.inflated.32k_fs_LR.surf.gii +0 -0
  192. {plotfig-1.8.0 → plotfig-1.9.0}/src/plotfig/data/neurodata/surfaces/macaque_BNA/civm.R.midthickness.32k_fs_LR.surf.gii +0 -0
  193. {plotfig-1.8.0 → plotfig-1.9.0}/src/plotfig/data/neurodata/surfaces/macaque_BNA/civm.R.pial.32k_fs_LR.surf.gii +0 -0
  194. {plotfig-1.8.0 → plotfig-1.9.0}/src/plotfig/data/neurodata/surfaces/macaque_BNA/civm.R.veryinflated.32k_fs_LR.surf.gii +0 -0
  195. {plotfig-1.8.0 → plotfig-1.9.0}/src/plotfig/data/neurodata/surfaces/macaque_BNA/civm.R.white.32k_fs_LR.surf.gii +0 -0
  196. {plotfig-1.8.0 → plotfig-1.9.0}/src/plotfig/data/neurodata/surfaces/macaque_NMT2/L.gray_surface.inf_300.surf.gii +0 -0
  197. {plotfig-1.8.0 → plotfig-1.9.0}/src/plotfig/data/neurodata/surfaces/macaque_NMT2/L.gray_surface.surf.gii +0 -0
  198. {plotfig-1.8.0 → plotfig-1.9.0}/src/plotfig/data/neurodata/surfaces/macaque_NMT2/L.mid_surface.inf_300.surf.gii +0 -0
  199. {plotfig-1.8.0 → plotfig-1.9.0}/src/plotfig/data/neurodata/surfaces/macaque_NMT2/L.mid_surface.surf.gii +0 -0
  200. {plotfig-1.8.0 → plotfig-1.9.0}/src/plotfig/data/neurodata/surfaces/macaque_NMT2/L.white_surface.inf_300.surf.gii +0 -0
  201. {plotfig-1.8.0 → plotfig-1.9.0}/src/plotfig/data/neurodata/surfaces/macaque_NMT2/L.white_surface.surf.gii +0 -0
  202. {plotfig-1.8.0 → plotfig-1.9.0}/src/plotfig/data/neurodata/surfaces/macaque_NMT2/R.gray_surface.inf_300.surf.gii +0 -0
  203. {plotfig-1.8.0 → plotfig-1.9.0}/src/plotfig/data/neurodata/surfaces/macaque_NMT2/R.gray_surface.surf.gii +0 -0
  204. {plotfig-1.8.0 → plotfig-1.9.0}/src/plotfig/data/neurodata/surfaces/macaque_NMT2/R.mid_surface.inf_300.surf.gii +0 -0
  205. {plotfig-1.8.0 → plotfig-1.9.0}/src/plotfig/data/neurodata/surfaces/macaque_NMT2/R.mid_surface.surf.gii +0 -0
  206. {plotfig-1.8.0 → plotfig-1.9.0}/src/plotfig/data/neurodata/surfaces/macaque_NMT2/R.white_surface.inf_300.surf.gii +0 -0
  207. {plotfig-1.8.0 → plotfig-1.9.0}/src/plotfig/data/neurodata/surfaces/macaque_NMT2/R.white_surface.surf.gii +0 -0
  208. {plotfig-1.8.0 → plotfig-1.9.0}/src/plotfig/data/neurodata/volumes/macaque_NMT2/CHARM5_add_13_sgms_asym.nii.gz +0 -0
  209. {plotfig-1.8.0 → plotfig-1.9.0}/src/plotfig/matrix.py +0 -0
  210. {plotfig-1.8.0 → plotfig-1.9.0}/src/plotfig/utils/__init__.py +0 -0
  211. {plotfig-1.8.0 → plotfig-1.9.0}/src/plotfig/utils/color.py +0 -0
  212. {plotfig-1.8.0 → plotfig-1.9.0}/src/plotfig/utils/matrix.py +0 -0
  213. {plotfig-1.8.0 → plotfig-1.9.0}/tests/test.ipynb +0 -0
  214. {plotfig-1.8.0 → plotfig-1.9.0}/uv.lock +0 -0
@@ -12,7 +12,6 @@ wheels/
12
12
  # backup
13
13
  *.bak
14
14
 
15
- # notebooks
15
+ .vscode/*
16
16
  notebooks/figures/*
17
-
18
17
  tests/figures/*
@@ -0,0 +1 @@
1
+ {".":"1.9.0"}
@@ -0,0 +1,242 @@
1
+ # Changelog
2
+
3
+ ## [1.9.0](https://github.com/RicardoRyn/plotfig/compare/v1.8.1...v1.9.0) (2025-11-12)
4
+
5
+
6
+ ### Features ✨
7
+
8
+ * **bar:** add one-sample t-test functionality ([00fdceb](https://github.com/RicardoRyn/plotfig/commit/00fdceb4b2b565fb33580a45f88f1ad5f5a8a258)), closes [#5](https://github.com/RicardoRyn/plotfig/issues/5)
9
+ * **bar:** allow single-group bar plots to optionally show dots ([de2a2bb](https://github.com/RicardoRyn/plotfig/commit/de2a2bb5ab846041b380cf6225002575beb0406a))
10
+ * **bar:** support color transparency adjustment via `color_alpha` argument ([530980d](https://github.com/RicardoRyn/plotfig/commit/530980dc346a338658d8333bb274004fcaac8d7d))
11
+ * **bar:** support combining multiple statistical test methods ([34b6960](https://github.com/RicardoRyn/plotfig/commit/34b6960ff705468154bc5fbf75b9917ba8ac64fd))
12
+ * **bar:** 增加函数绘制多组bar图 ([d740fbe](https://github.com/RicardoRyn/plotfig/commit/d740fbec2534fd91f660ca183323fdf014c5537a))
13
+ * **bar:** 每个独立的样本点都能够指定颜色 ([8c0f297](https://github.com/RicardoRyn/plotfig/commit/8c0f297c7a6c847e53db3ee3f2719568ff644d72))
14
+ * **bar:** 能够绘制间渐变色的bar图,设置bar边框颜色 ([02d163f](https://github.com/RicardoRyn/plotfig/commit/02d163ffbe0b0d51cb7c7b59ca7d75b71da4ed9d))
15
+ * **circos:** add support for changing node label orientation via `node_label_orientation` ([abb7746](https://github.com/RicardoRyn/plotfig/commit/abb77465b33ea91d1a23592436b27d400799995f))
16
+ * **circos:** Implement a new method for drawing circos plots ([ebf3352](https://github.com/RicardoRyn/plotfig/commit/ebf3352491566817fc6202c1a9323e9f6e8a323a))
17
+ * **connec:** Add `line_color` parameter to customize connection line colors ([e4de41e](https://github.com/RicardoRyn/plotfig/commit/e4de41effe495767cde0980ce5e2cee458d8b3a8))
18
+ * **connection:** add batch image cropping and GIF creation utilities ([f6554aa](https://github.com/RicardoRyn/plotfig/commit/f6554aaac27549428b10646d11a646b93ce389af))
19
+ * **connection:** 可为脑连接html文件截图 ([5172a89](https://github.com/RicardoRyn/plotfig/commit/5172a890cea45b3405c3fb4a2048fc0d81295c4b))
20
+ * **connection:** 增加函数绘制玻璃大脑连接图 ([43ac5e5](https://github.com/RicardoRyn/plotfig/commit/43ac5e53f92b37b03b475c95fd930cb79cbfeb45)), closes [#1](https://github.com/RicardoRyn/plotfig/issues/1)
21
+ * **connection:** 现在默认不显示没有任何连接的节点 ([25c9e0d](https://github.com/RicardoRyn/plotfig/commit/25c9e0de1dd89ccec9755a2b365f1746778cf8ee)), closes [#2](https://github.com/RicardoRyn/plotfig/issues/2)
22
+ * **corr:** 在绘制相关点线图时,允许用正六边形展示大量散点的分布密度 ([8e25741](https://github.com/RicardoRyn/plotfig/commit/8e25741fa2337eb8e356f4ae5467ac782b2f0311))
23
+ * **corr:** 现在可以手动选择是否显示p值 ([d93e719](https://github.com/RicardoRyn/plotfig/commit/d93e71946cb802b949097e0d5b5fb560e561b05b))
24
+ * **surface:** 增加函数绘制猕猴D99图集的脑区图 ([ae33f94](https://github.com/RicardoRyn/plotfig/commit/ae33f94319aa7e4fcb849c11624523da01cbb6ab))
25
+ * **surface:** 增加函数绘制黑猩猩BNA图集脑图 ([95aaae1](https://github.com/RicardoRyn/plotfig/commit/95aaae12cf0b9b5c43a7259ecd39dbffdefab515))
26
+ * **utils:** Add several utility functions ([b59f2a4](https://github.com/RicardoRyn/plotfig/commit/b59f2a49a6683e8ce942f47a2adc2a79a94e6f84))
27
+ * **violin:** add function to plot single-group violin fig ([5c15b21](https://github.com/RicardoRyn/plotfig/commit/5c15b2172ab6df3eb40722f33374abcc606b9be5))
28
+ * **violin:** add function to plot single-group violin fig ([8b2884b](https://github.com/RicardoRyn/plotfig/commit/8b2884bdb7eb2a839c46e673e3f29901ec433722))
29
+ * **连接:** 添加 `line_color` 参数以自定义连接线颜色 ([e4de41e](https://github.com/RicardoRyn/plotfig/commit/e4de41effe495767cde0980ce5e2cee458d8b3a8))
30
+
31
+
32
+ ### Bug Fixes 🔧
33
+
34
+ * **bar:** fix bug causing multi_bar plot failure ([a797006](https://github.com/RicardoRyn/plotfig/commit/a797006ed7b0598f65ff14f29d1c4c0280b1d811))
35
+ * **bar:** fix the statistic line color not displaying as expected ([51489d4](https://github.com/RicardoRyn/plotfig/commit/51489d4231711f756e24203dd25b70e8128fc89f))
36
+ * **bar:** handle empty significance plot without error ([a048ef2](https://github.com/RicardoRyn/plotfig/commit/a048ef272e40cdc85be99adcb4dfc11911abf964))
37
+ * **bar:** isolate random number generator inside function ([a423c90](https://github.com/RicardoRyn/plotfig/commit/a423c90a3ba6ecdd0950ca10de6e61e9bb94fd64))
38
+ * **bar:** remove leftover debug print in bar functions ([37f6f4c](https://github.com/RicardoRyn/plotfig/commit/37f6f4cfe55ed7ad0578040838f09f5966ce89cf))
39
+ * **bar:** rename `y_lim_range` to `y_lim` in `plot_one_group_bar_figure` ([8d18d3a](https://github.com/RicardoRyn/plotfig/commit/8d18d3ad24708c0de621cf0fddc7e3382992895c))
40
+ * **circos:** prevent type warning from type annotations ([b3552da](https://github.com/RicardoRyn/plotfig/commit/b3552dafd21fe72d9a294e0a52b8dc286d6a108e))
41
+ * **connec:** Fix color bug caused by integer values ([b104c1f](https://github.com/RicardoRyn/plotfig/commit/b104c1f985c4aeaf1576c716fc1f0b7725774e26))
42
+ * **connec:** fix issue with line_color display under color scale ([83d46d7](https://github.com/RicardoRyn/plotfig/commit/83d46d7031c49a455ab2648a92193ae5278750f4))
43
+ * **deps:** update surfplot dependency info to use GitHub version ([de4ad0c](https://github.com/RicardoRyn/plotfig/commit/de4ad0ce889b418a788659e6f700eebc34a02a33))
44
+ * **deps:** use the correct version of surfplot ([7467c20](https://github.com/RicardoRyn/plotfig/commit/7467c200f46af37a7ad0cac6aef464d1e24d9ef8))
45
+ * **matrix:** 改成返回None ([b7d1b8d](https://github.com/RicardoRyn/plotfig/commit/b7d1b8d8cabbc0e57bd3245baccbcb71a5edfda8))
46
+ * **surface:** 修复函数并非仅返回fig的bug ([e0eb9f7](https://github.com/RicardoRyn/plotfig/commit/e0eb9f7fc2fba3ab02ca880c012445f22fd6c22d))
47
+ * **surface:** 修复当值为0的情况下,脑区不显示的bug ([ba792de](https://github.com/RicardoRyn/plotfig/commit/ba792dee52827fa5643adc48934e2155e7dcd1ad))
48
+
49
+
50
+ ### Code Refactoring ♻️
51
+
52
+ * **bar:** mark string input for `test_method` as planned for deprecation ([e56d6d7](https://github.com/RicardoRyn/plotfig/commit/e56d6d7b79104b6079619b73158e21ee284a5304))
53
+ * **bar:** Remove the legacy `plot_one_group_violin_figure_old` function ([6d1316d](https://github.com/RicardoRyn/plotfig/commit/6d1316d3050279f849d5c941ff6280c0ce419145))
54
+ * **bar:** rename arguments in plot_one_group_bar_figure ([22a19cb](https://github.com/RicardoRyn/plotfig/commit/22a19cb35b46b334ee0498b740d085f3a0591dc8))
55
+ * **bar:** replace print with warnings.warn ([3560d64](https://github.com/RicardoRyn/plotfig/commit/3560d64bf41237cbbc9311eb380665133b803d7b))
56
+ * **bar:** 将 `test_method` 的字符串输入标记为即将弃用 ([e56d6d7](https://github.com/RicardoRyn/plotfig/commit/e56d6d7b79104b6079619b73158e21ee284a5304))
57
+ * **circos:** Temporarily disable circos plot ([a96bb09](https://github.com/RicardoRyn/plotfig/commit/a96bb09cc799ce34785146f6bd855631ae1ad73a))
58
+ * **corr/matrix:** function now returns Axes object ([e47cada](https://github.com/RicardoRyn/plotfig/commit/e47cada18a411fe28f7dc8a6ef62dea00acd3888))
59
+ * **corr:** change default ax title font size in correlation plots to 12 ([5aab9fe](https://github.com/RicardoRyn/plotfig/commit/5aab9fe082f05894379c90b7e7a4a5a3a4739c49))
60
+ * **src:** 重构代码,更加可读,易维护 ([d50e40d](https://github.com/RicardoRyn/plotfig/commit/d50e40d45a20b0c355553f1634eac9bdcca74d39))
61
+ * **surface:** Deprecate old functions ([d90dc92](https://github.com/RicardoRyn/plotfig/commit/d90dc927731cd369d2ac1cc0939556b13d54158c))
62
+ * **surface:** unify brain surface plotting with new plot_brain_surface_figure ([b566e23](https://github.com/RicardoRyn/plotfig/commit/b566e23cf435197dc4ca4da418f09cdc8641829d))
63
+ * **tests:** remove unused tests folder ([b4a2b69](https://github.com/RicardoRyn/plotfig/commit/b4a2b697ed9d5c976bf3cf5858f67d7033cc3aa3))
64
+
65
+ ## [1.8.1](https://github.com/RicardoRyn/plotfig/compare/v1.8.0...v1.8.1) (2025-10-29)
66
+
67
+
68
+ ### Bug Fixes 🔧
69
+
70
+ * **bar:** fix the statistic line color not displaying as expected ([25338dd](https://github.com/RicardoRyn/plotfig/commit/25338dd2322b9bb88297b44a22c67a6b0d92a4cf))
71
+
72
+ ## [1.8.0](https://github.com/RicardoRyn/plotfig/compare/v1.7.0...v1.8.0) (2025-09-10)
73
+
74
+
75
+ ### Features ✨
76
+
77
+ * **circos:** add support for changing node label orientation via `node_label_orientation` ([abb7746](https://github.com/RicardoRyn/plotfig/commit/abb77465b33ea91d1a23592436b27d400799995f))
78
+
79
+
80
+ ### Bug Fixes 🔧
81
+
82
+ * **bar:** remove leftover debug print in bar functions ([37f6f4c](https://github.com/RicardoRyn/plotfig/commit/37f6f4cfe55ed7ad0578040838f09f5966ce89cf))
83
+
84
+ ## [1.7.0](https://github.com/RicardoRyn/plotfig/compare/v1.6.1...v1.7.0) (2025-09-09)
85
+
86
+
87
+ ### Features ✨
88
+
89
+ * **bar:** allow single-group bar plots to optionally show dots ([de2a2bb](https://github.com/RicardoRyn/plotfig/commit/de2a2bb5ab846041b380cf6225002575beb0406a))
90
+
91
+ ## [1.6.1](https://github.com/RicardoRyn/plotfig/compare/v1.6.0...v1.6.1) (2025-09-07)
92
+
93
+
94
+ ### Bug Fixes 🔧
95
+
96
+ * **circos:** prevent type warning from type annotations ([b3552da](https://github.com/RicardoRyn/plotfig/commit/b3552dafd21fe72d9a294e0a52b8dc286d6a108e))
97
+
98
+ ## [1.6.0](https://github.com/RicardoRyn/plotfig/compare/v1.5.1...v1.6.0) (2025-09-06)
99
+
100
+
101
+ ### Features ✨
102
+
103
+ * **circos:** Implement a new method for drawing circos plots ([ebf3352](https://github.com/RicardoRyn/plotfig/commit/ebf3352491566817fc6202c1a9323e9f6e8a323a))
104
+ * **utils:** Add several utility functions ([b59f2a4](https://github.com/RicardoRyn/plotfig/commit/b59f2a49a6683e8ce942f47a2adc2a79a94e6f84))
105
+
106
+
107
+ ### Bug Fixes 🔧
108
+
109
+ * **bar:** fix bug causing multi_bar plot failure ([a797006](https://github.com/RicardoRyn/plotfig/commit/a797006ed7b0598f65ff14f29d1c4c0280b1d811))
110
+ * **connec:** Fix color bug caused by integer values ([b104c1f](https://github.com/RicardoRyn/plotfig/commit/b104c1f985c4aeaf1576c716fc1f0b7725774e26))
111
+
112
+
113
+ ### Code Refactoring ♻️
114
+
115
+ * **circos:** Temporarily disable circos plot ([a96bb09](https://github.com/RicardoRyn/plotfig/commit/a96bb09cc799ce34785146f6bd855631ae1ad73a))
116
+ * **corr/matrix:** function now returns Axes object ([e47cada](https://github.com/RicardoRyn/plotfig/commit/e47cada18a411fe28f7dc8a6ef62dea00acd3888))
117
+ * **corr:** change default ax title font size in correlation plots to 12 ([5aab9fe](https://github.com/RicardoRyn/plotfig/commit/5aab9fe082f05894379c90b7e7a4a5a3a4739c49))
118
+ * **surface:** Deprecate old functions ([d90dc92](https://github.com/RicardoRyn/plotfig/commit/d90dc927731cd369d2ac1cc0939556b13d54158c))
119
+
120
+ ## [1.5.1](https://github.com/RicardoRyn/plotfig/compare/v1.5.0...v1.5.1) (2025-08-11)
121
+
122
+
123
+ ### Bug Fixes
124
+
125
+ * **connec:** fix issue with line_color display under color scale ([83d46d7](https://github.com/RicardoRyn/plotfig/commit/83d46d7031c49a455ab2648a92193ae5278750f4))
126
+
127
+
128
+ ### Code Refactoring
129
+
130
+ * **bar:** Remove the legacy `plot_one_group_violin_figure_old` function ([6d1316d](https://github.com/RicardoRyn/plotfig/commit/6d1316d3050279f849d5c941ff6280c0ce419145))
131
+
132
+ ## [1.5.0](https://github.com/RicardoRyn/plotfig/compare/v1.4.0...v1.5.0) (2025-08-07)
133
+
134
+
135
+ ### Features
136
+
137
+ * **bar:** support combining multiple statistical test methods ([34b6960](https://github.com/RicardoRyn/plotfig/commit/34b6960ff705468154bc5fbf75b9917ba8ac64fd))
138
+ * **connec:** Add `line_color` parameter to customize connection line colors ([e4de41e](https://github.com/RicardoRyn/plotfig/commit/e4de41effe495767cde0980ce5e2cee458d8b3a8))
139
+
140
+
141
+ ### Code Refactoring
142
+
143
+ * **bar:** mark string input for `test_method` as planned for deprecation ([e56d6d7](https://github.com/RicardoRyn/plotfig/commit/e56d6d7b79104b6079619b73158e21ee284a5304))
144
+
145
+ ## [1.4.0](https://github.com/RicardoRyn/plotfig/compare/v1.3.3...v1.4.0) (2025-07-30)
146
+
147
+
148
+ ### Features
149
+
150
+ * **bar:** support color transparency adjustment via `color_alpha` argument ([530980d](https://github.com/RicardoRyn/plotfig/commit/530980dc346a338658d8333bb274004fcaac8d7d))
151
+
152
+ ## [1.3.3](https://github.com/RicardoRyn/plotfig/compare/v1.3.2...v1.3.3) (2025-07-29)
153
+
154
+
155
+ ### Bug Fixes
156
+
157
+ * **bar**: handle empty significance plot without error
158
+
159
+ ## [1.3.2](https://github.com/RicardoRyn/plotfig/compare/v1.3.1...v1.3.2) (2025-07-29)
160
+
161
+
162
+ ### Bug Fixes
163
+
164
+ * **deps**: use the correct version of surfplot
165
+
166
+ ## [1.3.1](https://github.com/RicardoRyn/plotfig/compare/v1.3.0...v1.3.1) (2025-07-28)
167
+
168
+
169
+ ### Bug Fixes
170
+
171
+ * **deps**: update surfplot dependency info to use GitHub version
172
+
173
+ ## [1.3.0](https://github.com/RicardoRyn/plotfig/compare/v1.2.1...v1.3.0) (2025-07-28)
174
+
175
+
176
+ ### Features
177
+
178
+ * **bar**: add one-sample t-test functionality
179
+
180
+
181
+ ### Bug Fixes
182
+
183
+ * **bar**: isolate random number generator inside function
184
+
185
+
186
+ ### Code Refactoring
187
+
188
+ * **surface**: unify brain surface plotting with new plot_brain_surface_figure
189
+ * **bar**: replace print with warnings.warn
190
+ * **bar**: rename arguments in plot_one_group_bar_figure
191
+ * **tests**: remove unused tests folder
192
+
193
+ ## [1.2.1](https://github.com/RicardoRyn/plotfig/compare/v1.2.0...v1.2.1) (2025-07-24)
194
+
195
+
196
+ ### Bug Fixes
197
+
198
+ * **bar**: rename `y_lim_range` to `y_lim` in `plot_one_group_bar_figure`
199
+
200
+ ## [1.2.0](https://github.com/RicardoRyn/plotfig/compare/v1.1.0...v1.2.0) (2025-07-24)
201
+
202
+
203
+ ### Features
204
+
205
+ * **violin**: add function to plot single-group violin fig
206
+
207
+
208
+ ### Bug Fixes
209
+
210
+ * **matrix**: changed return value to None
211
+
212
+ ## [1.1.0](https://github.com/RicardoRyn/plotfig/compare/v1.0.0...v1.1.0) (2025-07-21)
213
+
214
+
215
+ ### Features
216
+
217
+ * **corr**: allow hexbin to show dense scatter points in correlation plot
218
+ * **bar**: support gradient color bars and now can change border color
219
+
220
+ ## 1.0.0 (2025-07-03)
221
+
222
+
223
+ ### Features
224
+
225
+ * **bar**: support plotting single-group bar charts with statistical tests
226
+ * **bar**: support plotting multi-group bars charts
227
+ * **corr**: support combined sactter and line correlation plots
228
+ * **matrix**: support plotting matrix plots (i.e. heatmaps)
229
+ * **surface**: support brain region plots for human, chimpanzee and macaque
230
+ * **circos**: support brain connectivity circos plots
231
+ * **connection**: support glass brain connectivity plots
232
+
233
+
234
+ ### Bug Fixes
235
+
236
+ * **surface**: fix bug where function did not retrun fig only
237
+ * **surface**: fix bug where brain region with zero values were not displayed
238
+
239
+
240
+ ### Code Refactoring
241
+
242
+ * **src**: refactor code for more readability and maintainability
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: plotfig
3
- Version: 1.8.0
3
+ Version: 1.9.0
4
4
  Summary: Scientific plotting package for Cognitive neuroscience
5
5
  Author-email: Ricardo Ryn <ricardoRyn1317@gmail.com>
6
6
  License-File: LICENSE
@@ -97,7 +97,7 @@ rm -rf surfplot
97
97
  推荐先 Fork 仓库,然后克隆您自己的 Fork 并安装 `dev` 分支:
98
98
 
99
99
  ```bash
100
- git clone -b dev https://github.com/ <your-username >/plotfig.git
100
+ git clone -b dev https://github.com/<your-username>/plotfig.git
101
101
  cd plotfig
102
102
  pip install -e .
103
103
  ```
@@ -110,4 +110,4 @@ pip install -e .
110
110
 
111
111
  都非常欢迎在 [Issue](https://github.com/RicardoRyn/plotfig/issues) 中提出。
112
112
 
113
- 也可以直接提交 [PR](https://github.com/RicardoRyn/plotfig/pulls),一起变得更强 🙌!
113
+ 也可以直接提交 [PR](https://github.com/RicardoRyn/plotfig/pulls),一起变得更强 💪!
@@ -77,7 +77,7 @@ rm -rf surfplot
77
77
  推荐先 Fork 仓库,然后克隆您自己的 Fork 并安装 `dev` 分支:
78
78
 
79
79
  ```bash
80
- git clone -b dev https://github.com/ <your-username >/plotfig.git
80
+ git clone -b dev https://github.com/<your-username>/plotfig.git
81
81
  cd plotfig
82
82
  pip install -e .
83
83
  ```
@@ -90,4 +90,4 @@ pip install -e .
90
90
 
91
91
  都非常欢迎在 [Issue](https://github.com/RicardoRyn/plotfig/issues) 中提出。
92
92
 
93
- 也可以直接提交 [PR](https://github.com/RicardoRyn/plotfig/pulls),一起变得更强 🙌!
93
+ 也可以直接提交 [PR](https://github.com/RicardoRyn/plotfig/pulls),一起变得更强 💪!
@@ -55,7 +55,7 @@ pip install .
55
55
  推荐先 Fork 仓库,然后克隆您自己的 Fork 并安装 `dev` 分支:
56
56
 
57
57
  ```bash
58
- git clone -b dev https://github.com/ <your-username >/plotfig.git
58
+ git clone -b dev https://github.com/<your-username>/plotfig.git
59
59
  cd plotfig
60
60
  pip install -e .
61
61
  ```
@@ -68,4 +68,4 @@ pip install -e .
68
68
 
69
69
  都非常欢迎在 [Issue](https://github.com/RicardoRyn/plotfig/issues) 中提出。
70
70
 
71
- 也可以直接提交 [PR](https://github.com/RicardoRyn/plotfig/pulls),一起变得更强 🙌!
71
+ 也可以直接提交 [PR](https://github.com/RicardoRyn/plotfig/pulls),一起变得更强 💪!
@@ -1,6 +1,6 @@
1
1
  [project]
2
2
  name = "plotfig"
3
- version = "1.8.0"
3
+ version = "1.9.0"
4
4
  description = "Scientific plotting package for Cognitive neuroscience"
5
5
  keywords = ["neuroscience", "plotting", "visualization"]
6
6
  readme = "README.md"
@@ -9,7 +9,12 @@ from .correlation import plot_correlation_figure
9
9
  from .matrix import plot_matrix_figure
10
10
  from .brain_surface import plot_brain_surface_figure
11
11
  from .circos import plot_circos_figure
12
- from .brain_connection import plot_brain_connection_figure, save_brain_connection_frames
12
+ from .brain_connection import (
13
+ plot_brain_connection_figure,
14
+ save_brain_connection_frames,
15
+ batch_crop_images,
16
+ create_gif_from_images,
17
+ )
13
18
  from .utils import (
14
19
  gen_hex_colors,
15
20
  gen_symmetric_matrix,
@@ -35,6 +40,8 @@ __all__ = [
35
40
  # brain_connection
36
41
  "plot_brain_connection_figure",
37
42
  "save_brain_connection_frames",
43
+ "batch_crop_images",
44
+ "create_gif_from_images",
38
45
  # utils
39
46
  "gen_hex_colors",
40
47
  "gen_symmetric_matrix",
@@ -205,7 +205,7 @@ def _annotate_significance(
205
205
  xy=(i, y),
206
206
  xytext=(j, y),
207
207
  arrowprops=dict(
208
- edgecolor=line_color, width=0.5, headwidth=0.1, headlength=0.1
208
+ color=line_color, width=0.5, headwidth=0.1, headlength=0.1
209
209
  ),
210
210
  )
211
211
  _stars(pval, (i + j) / 2, y + star_offset, color, fontsize)
@@ -2,6 +2,8 @@ import datetime
2
2
  from pathlib import Path
3
3
  from typing import Literal
4
4
  from collections.abc import Sequence
5
+ from PIL import Image
6
+ import imageio
5
7
 
6
8
  import numpy as np
7
9
  import numpy.typing as npt
@@ -19,6 +21,8 @@ Num = int | float
19
21
  __all__ = [
20
22
  "plot_brain_connection_figure",
21
23
  "save_brain_connection_frames",
24
+ "batch_crop_images",
25
+ "create_gif_from_images",
22
26
  ]
23
27
 
24
28
 
@@ -314,3 +318,99 @@ def save_brain_connection_frames(
314
318
  fig.update_layout(scene_camera=camera)
315
319
  pio.write_image(fig, f"{output_dir}/frame_{i:03d}.png", width=800, height=800)
316
320
  logger.info(f"保存了 {n_frames} 张图片在 {output_dir}")
321
+
322
+
323
+ def batch_crop_images(
324
+ directory_path: Path,
325
+ suffix: str = "_cropped",
326
+ left_frac: float = 0.25,
327
+ top_frac: float = 0.25,
328
+ right_frac: float = 0.25,
329
+ bottom_frac: float = 0.25,
330
+ ):
331
+ """
332
+ 批量裁剪指定目录下的图像文件。
333
+
334
+ Args:
335
+ directory_path (Path): 图像文件所在的目录路径。
336
+ suffix (str, optional): 新文件名后缀。默认为 "_cropped"。
337
+ left_frac (float, optional): 左侧裁剪比例(0-1)。默认为 0.2。
338
+ top_frac (float, optional): 上侧裁剪比例(0-1)。默认为 0.15。
339
+ right_frac (float, optional): 右侧裁剪比例(0-1)。默认为 0.2。
340
+ bottom_frac (float, optional): 下侧裁剪比例(0-1)。默认为 0.15。
341
+
342
+ Notes:
343
+ 支持常见图像格式 (PNG, JPG, JPEG, BMP, TIFF)。
344
+ 裁剪后的图像将保存在原目录中,并添加指定后缀,原图像保持不变。
345
+ 所有裁剪均基于图像尺寸的百分比计算,无绝对像素值。
346
+ """
347
+ supported_extensions = {".png", ".jpg", ".jpeg", ".bmp", ".tiff", ".tif"}
348
+
349
+ for image_path in directory_path.rglob("*"):
350
+ if (
351
+ not image_path.is_file()
352
+ or image_path.suffix.lower() not in supported_extensions
353
+ ):
354
+ continue
355
+
356
+ new_file_name = image_path.stem + suffix + image_path.suffix
357
+
358
+ try:
359
+ figure = Image.open(image_path)
360
+ width, height = figure.size
361
+ print(f"图像宽度:{width},高度:{height}")
362
+
363
+ left = int(width * left_frac)
364
+ right = int(width * (1 - right_frac))
365
+ top = int(height * top_frac)
366
+ bottom = int(height * (1 - bottom_frac))
367
+
368
+ # 裁切图像
369
+ cropped_fig = figure.crop((left, top, right, bottom))
370
+ # 保存裁切后的图像
371
+ cropped_fig.save(image_path.parent / new_file_name)
372
+
373
+ figure.close()
374
+ cropped_fig.close()
375
+ except Exception as e:
376
+ print(f"处理文件 {image_path.name} 时出错: {e}")
377
+
378
+
379
+ def create_gif_from_images(
380
+ folder_path: str | Path,
381
+ output_name: str = "output.gif",
382
+ fps: int = 10,
383
+ extensions: Sequence[str] = (".png", ".jpg", ".jpeg"),
384
+ ) -> None:
385
+ """
386
+ 从指定文件夹中的图片生成 GIF 文件。
387
+
388
+ Args:
389
+ folder_path (str | Path): 图片所在文件夹路径
390
+ output_name (str, optional): 输出 GIF 文件名,默认为 "output.gif"
391
+ fps (int, optional): GIF 帧率,默认为 10
392
+ extensions (Sequence[str], optional): 图片文件扩展名过滤,默认为 ('.png', '.jpg', '.jpeg')
393
+ """
394
+ folder = Path(folder_path)
395
+ if not folder.exists() or not folder.is_dir():
396
+ raise ValueError(f"{folder} 不是有效的文件夹路径。")
397
+
398
+ # 获取文件夹下指定扩展名的文件,并排序
399
+ figures_path = sorted(
400
+ [f for f in folder.iterdir() if f.suffix.lower() in extensions]
401
+ )
402
+
403
+ if not figures_path:
404
+ raise ValueError(f"文件夹 {folder} 中没有找到符合 {extensions} 的图片文件。")
405
+
406
+ figures = [Image.open(f) for f in figures_path]
407
+
408
+ # 输出 GIF 路径
409
+ output_path = folder / output_name
410
+
411
+ # 创建 GIF
412
+ with imageio.get_writer(output_path, mode='I', fps=fps, loop=0) as writer:
413
+ for figure in figures:
414
+ writer.append_data(figure.convert('RGB'))
415
+
416
+ print(f"GIF 已保存到: {output_path}")
@@ -24,7 +24,7 @@ def plot_correlation_figure(
24
24
  stats_method: str = "spearman",
25
25
  ci: bool = False,
26
26
  dots_color: str = "steelblue",
27
- dots_size: int | float = 1,
27
+ dots_size: int | float = 10,
28
28
  line_color: str = "r",
29
29
  title_name: str = "",
30
30
  title_fontsize: int = 12,
@@ -0,0 +1,12 @@
1
+ import numpy as np
2
+ import matplotlib.pyplot as plt
3
+ from plotfig import plot_one_group_bar_figure
4
+
5
+ fig, ax = plt.subplots()
6
+
7
+ data1 = np.random.rand(10)
8
+ data2 = np.random.rand(10)
9
+
10
+ ax = plot_one_group_bar_figure([data1, data2], ax=ax)
11
+
12
+ fig.savefig("test.png")
@@ -1 +0,0 @@
1
- {".":"1.8.0"}