|
49 | 49 | import org.kohsuke.accmod.Restricted; |
50 | 50 | import org.kohsuke.accmod.restrictions.NoExternalUse; |
51 | 51 | import org.kohsuke.stapler.bind.JavaScriptMethod; |
52 | | -import umontreal.ssj.functionfit.SmoothingCubicSpline; |
53 | 52 |
|
54 | 53 | /** |
55 | 54 | * History of {@link hudson.tasks.test.TestObject} over time. |
@@ -208,16 +207,6 @@ private ObjectNode computeDurationTrendJson(List<HistoryTestResultSummary> histo |
208 | 207 | 0, |
209 | 208 | 0, |
210 | 209 | roundMul); // "--blue" |
211 | | - createSplineTrend( |
212 | | - series, |
213 | | - history, |
214 | | - lrX, |
215 | | - lrY, |
216 | | - "Smooth of " + durationStr, |
217 | | - "rgba(120, 50, 255, 0.5)", |
218 | | - 0, |
219 | | - 0, |
220 | | - roundMul); // "--indigo" |
221 | 210 | } |
222 | 211 | root.set("series", series); |
223 | 212 | root.set("domainAxisLabels", domainAxisLabels); |
@@ -279,51 +268,6 @@ private void createLinearTrend( |
279 | 268 | } |
280 | 269 | } |
281 | 270 |
|
282 | | - private void createSplineTrend( |
283 | | - ArrayNode series, |
284 | | - List<HistoryTestResultSummary> history, |
285 | | - double[] lrX, |
286 | | - double[] lrY, |
287 | | - String title, |
288 | | - String color, |
289 | | - int xAxisIndex, |
290 | | - int yAxisIndex, |
291 | | - double roundMul) { |
292 | | - if (history.size() < 200) { |
293 | | - return; |
294 | | - } |
295 | | - double rho = Math.min(1.0, 1.0 / Math.max(1, (history.size() / 2))); |
296 | | - if (rho > 0.75) { |
297 | | - return; // Too close to linear |
298 | | - } |
299 | | - SmoothingCubicSpline scs = new SmoothingCubicSpline(lrX, lrY, 0.001); |
300 | | - ObjectNode lrSeries = MAPPER.createObjectNode(); |
301 | | - series.add(lrSeries); |
302 | | - lrSeries.put("name", title); |
303 | | - lrSeries.put("preferScreenOrient", "landscape"); |
304 | | - lrSeries.put("type", "line"); |
305 | | - lrSeries.put("symbol", "circle"); |
306 | | - lrSeries.put("symbolSize", 0); |
307 | | - lrSeries.put("xAxisIndex", xAxisIndex); |
308 | | - lrSeries.put("yAxisIndex", yAxisIndex); |
309 | | - ArrayNode lrData = MAPPER.createArrayNode(); |
310 | | - lrSeries.set("data", lrData); |
311 | | - ObjectNode lrStyle = MAPPER.createObjectNode(); |
312 | | - lrSeries.set("itemStyle", lrStyle); |
313 | | - lrStyle.put("color", color); |
314 | | - ObjectNode lrAreaStyle = MAPPER.createObjectNode(); |
315 | | - lrSeries.set("areaStyle", lrAreaStyle); |
316 | | - lrAreaStyle.put("color", "rgba(0, 0, 0, 0)"); |
317 | | - |
318 | | - if (roundMul < 10.0) { |
319 | | - roundMul = 10.0; |
320 | | - } |
321 | | - for (int index = 0; index < history.size(); ++index) { |
322 | | - // Use float to reduce JSON size. |
323 | | - lrData.add((float) (Math.round(scs.evaluate(index) * roundMul) / roundMul)); |
324 | | - } |
325 | | - } |
326 | | - |
327 | 271 | static boolean EXTRA_GRAPH_MATH_ENABLED = |
328 | 272 | Boolean.parseBoolean(System.getProperty(History.class.getName() + ".EXTRA_GRAPH_MATH_ENABLED", "true")); |
329 | 273 |
|
@@ -464,8 +408,6 @@ private ObjectNode computeResultTrendJson(List<HistoryTestResultSummary> history |
464 | 408 | 1, |
465 | 409 | 1, |
466 | 410 | 10.0); // "--dark-blue" |
467 | | - createSplineTrend( |
468 | | - series, history, lrX, lrY, "Smooth of Passed", "rgba(255, 50, 255, 0.5)", 1, 1, 10.0); // "--purple" |
469 | 411 | } |
470 | 412 |
|
471 | 413 | root.set("series", series); |
|
0 commit comments