moderne-visualizations-misc 0.71.0__py3-none-any.whl → 0.71.2__py3-none-any.whl
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.
- moderne_visualizations_misc/composite_recipe_results_sankey.ipynb +28 -14
- moderne_visualizations_misc/recipe_performance.ipynb +12 -9
- {moderne_visualizations_misc-0.71.0.dist-info → moderne_visualizations_misc-0.71.2.dist-info}/METADATA +1 -1
- {moderne_visualizations_misc-0.71.0.dist-info → moderne_visualizations_misc-0.71.2.dist-info}/RECORD +6 -6
- {moderne_visualizations_misc-0.71.0.dist-info → moderne_visualizations_misc-0.71.2.dist-info}/WHEEL +1 -1
- {moderne_visualizations_misc-0.71.0.dist-info → moderne_visualizations_misc-0.71.2.dist-info}/top_level.txt +0 -0
|
@@ -31,9 +31,8 @@
|
|
|
31
31
|
"# Filter the data frame to only include rows where repositoryWithBranch contain\n",
|
|
32
32
|
"# a term in the repository_filter (case insensitive)\n",
|
|
33
33
|
"if len(repository_filter) > 0:\n",
|
|
34
|
-
" df = df[\n",
|
|
35
|
-
"
|
|
36
|
-
" ]"
|
|
34
|
+
" df = df[df[\"repositoryWithBranch\"].str.contains(\n",
|
|
35
|
+
" \"|\".join(repository_filter), case=False)]"
|
|
37
36
|
]
|
|
38
37
|
},
|
|
39
38
|
{
|
|
@@ -42,6 +41,9 @@
|
|
|
42
41
|
"metadata": {},
|
|
43
42
|
"outputs": [],
|
|
44
43
|
"source": [
|
|
44
|
+
"import pandas as pd\n",
|
|
45
|
+
"import numpy as np\n",
|
|
46
|
+
"\n",
|
|
45
47
|
"df = df[[\"parentRecipe\", \"recipe\"]].assign(count=lambda r: 1)\n",
|
|
46
48
|
"recipe_counts = (\n",
|
|
47
49
|
" df[[\"parentRecipe\", \"recipe\", \"count\"]]\n",
|
|
@@ -50,10 +52,6 @@
|
|
|
50
52
|
" .sort_values(ascending=False)\n",
|
|
51
53
|
" .reset_index(name=\"count\")\n",
|
|
52
54
|
")\n",
|
|
53
|
-
"recipe_counts[\"parentRecipe\"] = recipe_counts[\"parentRecipe\"].transform(\n",
|
|
54
|
-
" lambda s: s.split(\".\")[-1]\n",
|
|
55
|
-
")\n",
|
|
56
|
-
"recipe_counts[\"recipe\"] = recipe_counts[\"recipe\"].transform(lambda s: s.split(\".\")[-1])\n",
|
|
57
55
|
"\n",
|
|
58
56
|
"# sort recipe_counts by count\n",
|
|
59
57
|
"recipe_counts = recipe_counts.sort_values(by=[\"count\"], ascending=False)\n",
|
|
@@ -87,9 +85,8 @@
|
|
|
87
85
|
"# convert the 'count' column to a list\n",
|
|
88
86
|
"value = list(recipe_counts[\"count\"])\n",
|
|
89
87
|
"\n",
|
|
90
|
-
"# Format labels with node names and counts\n",
|
|
91
|
-
"\n",
|
|
92
88
|
"\n",
|
|
89
|
+
"# Format labels with node names and counts\n",
|
|
93
90
|
"def getCount(node):\n",
|
|
94
91
|
" left = recipe_counts[recipe_counts[\"recipe\"] == node][\"count\"].sum()\n",
|
|
95
92
|
" if left == 0:\n",
|
|
@@ -98,7 +95,12 @@
|
|
|
98
95
|
" return left\n",
|
|
99
96
|
"\n",
|
|
100
97
|
"\n",
|
|
101
|
-
"
|
|
98
|
+
"def short_name(node):\n",
|
|
99
|
+
" return node.split(\".\")[-1]\n",
|
|
100
|
+
"\n",
|
|
101
|
+
"\n",
|
|
102
|
+
"formatted_labels = [f\"{short_name(node)} - {getCount(node)}\" for node in all_nodes]\n",
|
|
103
|
+
"\n",
|
|
102
104
|
"base_colors = [\n",
|
|
103
105
|
" \"#2f42ff\",\n",
|
|
104
106
|
" \"#7e9bd2\",\n",
|
|
@@ -124,6 +126,13 @@
|
|
|
124
126
|
" colors.append(base_colors[i % len(base_colors)])\n",
|
|
125
127
|
"\n",
|
|
126
128
|
"\n",
|
|
129
|
+
"# Create custom data for links to show full node names\n",
|
|
130
|
+
"link_customdata = []\n",
|
|
131
|
+
"for i in range(len(source)):\n",
|
|
132
|
+
" source_name = all_nodes[source[i]]\n",
|
|
133
|
+
" target_name = all_nodes[target[i]]\n",
|
|
134
|
+
" link_customdata.append([source_name, target_name])\n",
|
|
135
|
+
"\n",
|
|
127
136
|
"# Create the Sankey diagram\n",
|
|
128
137
|
"fig = go.Figure(\n",
|
|
129
138
|
" data=[\n",
|
|
@@ -134,11 +143,16 @@
|
|
|
134
143
|
" line=dict(color=\"black\", width=0.5),\n",
|
|
135
144
|
" label=formatted_labels,\n",
|
|
136
145
|
" color=colors,\n",
|
|
146
|
+
" customdata=all_nodes,\n",
|
|
147
|
+
" hovertemplate=\"<b>%{customdata}</b><extra></extra>\",\n",
|
|
148
|
+
"\n",
|
|
137
149
|
" ),\n",
|
|
138
150
|
" link=dict(\n",
|
|
139
151
|
" source=source,\n",
|
|
140
152
|
" target=target,\n",
|
|
141
153
|
" value=value,\n",
|
|
154
|
+
" customdata=link_customdata,\n",
|
|
155
|
+
" hovertemplate=\"<b>Source:</b> %{customdata[0]}<br><b>Target:</b> %{customdata[1]}<br><b>Count:</b> %{value}<extra></extra>\",\n",
|
|
142
156
|
" ),\n",
|
|
143
157
|
" )\n",
|
|
144
158
|
" ]\n",
|
|
@@ -148,16 +162,16 @@
|
|
|
148
162
|
"fig.update_layout(\n",
|
|
149
163
|
" title_text=\"Recipes that made changes\",\n",
|
|
150
164
|
" font_size=10,\n",
|
|
151
|
-
" height=max(len(all_nodes) *
|
|
165
|
+
" height=max(len(all_nodes) * 10, 500),\n",
|
|
152
166
|
")\n",
|
|
153
167
|
"\n",
|
|
154
|
-
"fig.show()"
|
|
168
|
+
"fig.show()\n"
|
|
155
169
|
]
|
|
156
170
|
}
|
|
157
171
|
],
|
|
158
172
|
"metadata": {
|
|
159
173
|
"kernelspec": {
|
|
160
|
-
"display_name": "
|
|
174
|
+
"display_name": "moderne-visualizations-misc",
|
|
161
175
|
"language": "python",
|
|
162
176
|
"name": "python3"
|
|
163
177
|
},
|
|
@@ -171,7 +185,7 @@
|
|
|
171
185
|
"name": "python",
|
|
172
186
|
"nbconvert_exporter": "python",
|
|
173
187
|
"pygments_lexer": "ipython3",
|
|
174
|
-
"version": "3.
|
|
188
|
+
"version": "3.9.6"
|
|
175
189
|
}
|
|
176
190
|
},
|
|
177
191
|
"nbformat": 4,
|
|
@@ -38,15 +38,18 @@
|
|
|
38
38
|
"# normalize headers to match the original names already in use\n",
|
|
39
39
|
"# old headers: repositoryOrigin,repositoryPath,repositoryBranch,scmType,repositoryLink,recipe,sourceFiles,sourceFilesChanged,scanTotalTime,scanP99,scanMax,editTotalTime,editP99,editMax\n",
|
|
40
40
|
"# new headers: repositoryOrigin,repositoryPath,repositoryBranch,scmType,repositoryLink,recipe,sourceFiles,sourceFilesChanged,scanTotalTimeNs,scanP99Ns,scanMaxNs,editTotalTimeNs,editP99Ns,editMaxNs\n",
|
|
41
|
-
"if
|
|
42
|
-
" df.rename(
|
|
43
|
-
"
|
|
44
|
-
"
|
|
45
|
-
"
|
|
46
|
-
"
|
|
47
|
-
"
|
|
48
|
-
"
|
|
49
|
-
"
|
|
41
|
+
"if \"scanTotalTimeNs\" in df.columns:\n",
|
|
42
|
+
" df.rename(\n",
|
|
43
|
+
" columns={\n",
|
|
44
|
+
" \"scanTotalTimeNs\": \"scanTotalTime\",\n",
|
|
45
|
+
" \"scanP99Ns\": \"scanP99\",\n",
|
|
46
|
+
" \"scanMaxNs\": \"scanMax\",\n",
|
|
47
|
+
" \"editTotalTimeNs\": \"editTotalTime\",\n",
|
|
48
|
+
" \"editP99Ns\": \"editP99\",\n",
|
|
49
|
+
" \"editMaxNs\": \"editMax\",\n",
|
|
50
|
+
" },\n",
|
|
51
|
+
" inplace=True,\n",
|
|
52
|
+
" )"
|
|
50
53
|
]
|
|
51
54
|
},
|
|
52
55
|
{
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.4
|
|
2
2
|
Name: moderne_visualizations_misc
|
|
3
|
-
Version: 0.71.
|
|
3
|
+
Version: 0.71.2
|
|
4
4
|
Summary: Miscellaneous visualizations for the Moderne platform
|
|
5
5
|
Author-email: Jonathan Schneider <jonathan@moderne.io>, Kyle Scully <kyle@moderne.io>
|
|
6
6
|
License: Apache-2.0
|
{moderne_visualizations_misc-0.71.0.dist-info → moderne_visualizations_misc-0.71.2.dist-info}/RECORD
RENAMED
|
@@ -5,7 +5,7 @@ moderne_visualizations_misc/cobol_find_copybook.ipynb,sha256=buo5GKENebMYD3OSB2L
|
|
|
5
5
|
moderne_visualizations_misc/cobol_relationships.ipynb,sha256=eYSMUDcK5x7MlAFxpGJXPuRNjD1VU4AEFbk710bPPM0,8530
|
|
6
6
|
moderne_visualizations_misc/cobol_relationships_data_grid.ipynb,sha256=QVvc-gZEQa1qgYaWc5lODA9bWEhQ-NqX51a38EMN8XI,1950
|
|
7
7
|
moderne_visualizations_misc/comment_language_distribution.ipynb,sha256=8SqQPSOxMpS-oJzUQbDSnmz7tIUky-M_zFYqsxdsxLo,3157
|
|
8
|
-
moderne_visualizations_misc/composite_recipe_results_sankey.ipynb,sha256=
|
|
8
|
+
moderne_visualizations_misc/composite_recipe_results_sankey.ipynb,sha256=PmEZ10HnmNns-1QHqrJSrfXL-q6u0ZtBAEKRsE3kRxE,6167
|
|
9
9
|
moderne_visualizations_misc/dependency_tree_view.ipynb,sha256=rcW9LQzn_zNM7wnjOq1YA0B9ybzZPdrTRcc2VqzLOfs,2983
|
|
10
10
|
moderne_visualizations_misc/dependency_tree_view_nodejs.ipynb,sha256=YQRFdXkRwedWxEqe6G5ugqiU_aHPiRVFwPHQRyo0r5w,674
|
|
11
11
|
moderne_visualizations_misc/dependency_tree_view_nodejs_build_tools.ipynb,sha256=YQRFdXkRwedWxEqe6G5ugqiU_aHPiRVFwPHQRyo0r5w,674
|
|
@@ -58,7 +58,7 @@ moderne_visualizations_misc/language_composition_by_repo.ipynb,sha256=OEU0GR6U8O
|
|
|
58
58
|
moderne_visualizations_misc/lst_provenance.ipynb,sha256=0tuXcUHSn-mRQYKP27RSrbpuYj9w10KcbEB9aYMSOKQ,2148
|
|
59
59
|
moderne_visualizations_misc/maven_parent_poms.ipynb,sha256=dOB7Q89Xt1ep_n8ovJpE1bHK7Jjy9_o4yXCqfhN-KUc,2115
|
|
60
60
|
moderne_visualizations_misc/parse_failure_stacktraces.ipynb,sha256=0D6bPDY5oQ5BmDST1sfIGvTJSmTTkKVe3ealFfQMXwg,6122
|
|
61
|
-
moderne_visualizations_misc/recipe_performance.ipynb,sha256=
|
|
61
|
+
moderne_visualizations_misc/recipe_performance.ipynb,sha256=b58bW7-moZNDApW66EOtsdnmWwwnJia6rsFgqepfN00,4228
|
|
62
62
|
moderne_visualizations_misc/recommendations.ipynb,sha256=z5GQMPjTLAi2wIosjTQwb7IA5j07uhQyFo-cvXmxTVQ,4171
|
|
63
63
|
moderne_visualizations_misc/spring_component_relationships.ipynb,sha256=sQglDbEQ174QP2mN3Heo50E-CeVQrJ6x6A1RW1ABl-k,6997
|
|
64
64
|
moderne_visualizations_misc/spring_component_relationships_data_grid.ipynb,sha256=NkG9VjcnqR42WOZEhdPwBls29RWNkFo_SiSzKM4NTp4,1977
|
|
@@ -198,7 +198,7 @@ moderne_visualizations_misc/specs/sql_crud.yml,sha256=BaUV1bb3oJNrNARU-0YAez2S2y
|
|
|
198
198
|
moderne_visualizations_misc/specs/text_matches_tree_grid.yml,sha256=U2-j_kFaHNex5avmPtzw_6AWUs9JKk_ouCyqdJBThp4,903
|
|
199
199
|
moderne_visualizations_misc/specs/ui5lint_rule_treemap.yml,sha256=6g01v1eD93cvtS7GnRfzScunx_X5u9fjn2ax5SHCVsE,258
|
|
200
200
|
moderne_visualizations_misc/specs/ui5lint_violations_heatmap.yml,sha256=Ep97JEK5xjQkAjmHJNKPAoiIiDeuvksjnx_UREZTAbI,275
|
|
201
|
-
moderne_visualizations_misc-0.71.
|
|
202
|
-
moderne_visualizations_misc-0.71.
|
|
203
|
-
moderne_visualizations_misc-0.71.
|
|
204
|
-
moderne_visualizations_misc-0.71.
|
|
201
|
+
moderne_visualizations_misc-0.71.2.dist-info/METADATA,sha256=JN1mTwlz5vp-cHdYp_EMMTaF9TfWplWPCpukVl4kdPc,687
|
|
202
|
+
moderne_visualizations_misc-0.71.2.dist-info/WHEEL,sha256=_zCd3N1l69ArxyTb8rzEoP9TpbYXkqRFSNOD5OuxnTs,91
|
|
203
|
+
moderne_visualizations_misc-0.71.2.dist-info/top_level.txt,sha256=V_gviHcBSH6w_h-g98-9ecQRoN8d82cxPdV-DA3Leeo,28
|
|
204
|
+
moderne_visualizations_misc-0.71.2.dist-info/RECORD,,
|
|
File without changes
|