Ticket #865 (closed task: fixed)

Opened 8 years ago

Last modified 6 years ago

Implement Histogram dialog functionality

Reported by: bdezonia Owned by: aivar
Priority: major Milestone: imagej2-b7-ndim-data
Component: Plugins Version:
Severity: serious Keywords:
Cc: Blocked By:
Blocking: #1203, #1366

Description

In IJ1 the Histogram plugin opens an ImageWindow showing the histogram as an image and decorates it with some stats and UI buttons that interact with the histogram and histogram window. This functionality is not supported in IJ2. Make a pure IJ2 version of the histogram plugin that can do everything the IJ1 version can.

Change History

comment:1 Changed 8 years ago by gharris

  • Owner changed from bdezonia to gharris
  • Status changed from new to assigned

comment:2 Changed 8 years ago by curtis

  • Owner changed from gharris to curtis

comment:3 Changed 8 years ago by curtis

  • Blocking 1019 added

comment:4 Changed 8 years ago by curtis

See also #840.

comment:5 Changed 8 years ago by bdezonia

  • Milestone changed from imagej-2.0-beta2 to imagej-2.0-beta1

comment:6 Changed 8 years ago by bdezonia

  • Blocked By 1042 added

comment:6 Changed 8 years ago by curtis

Grant committed his HistogramPlot plugin prototype in 62d032d2df57d7786fd95de88a2a902ed01f90ef. This could be a good starting point for work on this ticket.

comment:7 Changed 8 years ago by bdezonia

Note that Grant's HistogramPlot plugin does not yet display histograms per channel. And it also totally avoids RGB style images.

comment:8 Changed 8 years ago by curtis

  • Milestone changed from imagej-2.0-beta1 to imagej-2.0-beta2

comment:9 Changed 8 years ago by curtis

  • Blocked By 1042 removed

(In #1042) This feature is not necessary for a Swing-specific histogram implementation.

comment:10 Changed 7 years ago by bdezonia

  • Blocking 1171 added; 1019 removed

comment:11 Changed 7 years ago by bdezonia

  • Blocked By 1042 added

comment:12 Changed 7 years ago by bdezonia

Note specifically the Live button that can interactively change the histogram info.

comment:13 Changed 7 years ago by bdezonia

  • Blocking 1203 added

comment:14 Changed 7 years ago by curtis

  • Milestone changed from imagej-2.0.0-beta3 to imagej-2.0.0-beta4

comment:15 Changed 7 years ago by curtis

  • Milestone changed from imagej-2.0.0-beta4 to imagej-2.0.0-beta5

comment:16 Changed 7 years ago by curtis

  • Blocking 1366 added; 1171 removed

comment:17 Changed 7 years ago by aivar

  • Owner changed from curtis to aivar

comment:18 Changed 7 years ago by aivar

  • Blocked By 1380 added

Added blocked by 1380. Rather than a decorated image I see the histogram more as a combination of a chart (which may be live) and some UI elements (which are non-modal).

(In SLIM Plugin the chart plus UI pattern is needed three times: histogram tool, decay graph, excitation graph. In all these cases the chart is at the top.)

comment:19 Changed 7 years ago by curtis

  • Milestone changed from imagej-2.0.0-beta6 to imagej-2.0.0-beta7

comment:20 Changed 7 years ago by dscho

  • Milestone changed from imagej2-b8-analysis to imagej2-b7-ndim-data

Fixing ImageJ-tickets...

comment:21 Changed 7 years ago by bdezonia

With merge commit e4dee7db384ea8c9c986082842154a8d188dbe0e I have updated the existing histogram plot plugin to display live buttons along with the chart. And I removed limitations that kept float and rgb images from working. Now there are multiple histograms that can be displayed (one at a time) such as each channel histogram and the composite histogram.

Note that this was all done in swing and should be made agnostic in the future.

It does not use Larry Lindsey's Histogram class. When the histogram branch code is merged it will be made to use that. For now it does its own internal calcs which needs to change going forward.

comment:22 Changed 6 years ago by bdezonia

With commit cb225aa30821ea473a845f894bc60ba40e394525 the plugin is now using the recently merged Histogram1d class from imglib algorithms.

comment:23 Changed 6 years ago by bdezonia

  • Blocked By 1042, 1380 removed

comment:24 Changed 6 years ago by bdezonia

  • Status changed from assigned to closed
  • Resolution set to fixed

There are a few remaining tasks needed to finish this task. But they are tickets in their own right (this ticket is too broad). Closing this ticket and opening new ones.

Note: See TracTickets for help on using tickets.