Login  Register

Re: Add data labels within the Plot lists

Posted by Michael Schmid on Mar 14, 2019; 8:00pm
URL: http://imagej.273.s1.nabble.com/Add-data-labels-within-the-Plot-lists-tp5021900p5021904.html

Hi Fred,

The tables created by Plots have blank entries at the end if the data
array is shorter than the length of the table.
[Technically, these are actually empty Strings, which have a numerical
"NaN" value hidden behind them.  Any numerical functions such as
Table.get and "Apply Macro" use the NaN; subsequent plotting of the data
in the table simply omits the NaN points].

You get these empty cells when you plot arrays of different length.
Plots created by Analyze>Tools>Curve Fitting are a typical example.


ResultsTables show NaN as "NaN" and +/-Infinity as "Infinity" or
"+Infinity".
Try this macro:

   Table.create();
   Table.set("a", 0, NaN);
   Table.set("b", 0, 1e200*1e200);
   Table.set("c", 0, -1e200*1e200);
   Table.update;

This is also true for plots (I tried a curve fit creating infinity
values and listing the data).


Michael
________________________________________________________________
On 14.03.19 19:06, Fred Damen wrote:

> Greetings,
>
> I find this useful, as the only time I click 'List' on the plot window is to
> debug the plot.  There are cases in which a plot point is listed with a blank
> y-value.  I assume this is + or - infinity as I believe that the only other
> non-printable number in NaN.  It would be useful for debugging to have the
> value explicitly stated, even if on an array that is short.
>
> Thanks,
>
> Fred
>
> On Thu, March 14, 2019 8:14 am, Philippe CARL wrote:
>> Dear all (probably mostly Michael and/or Wayne),
>> What do you think about adding labels for the data within the plots so that
>> when you list the plot data there is the possibility to not anymore read: X0
>> Y0, Y1,… but instead attributed data names.
>> This could for example be done by extending the "Plot.add(type, xValues,
>> yValues)" method by something like "Plot.add(type, xValues, yValues, "Data
>> name")".
>> And a method "Plot.setLegend()" could as well be added.
>> Indeed, in the case there is only 1 to 3 data sets the way the code is now
>> is in not an issue, but with more data it becomes easily difficult to
>> understand and interpret the listed data.
>> Also do you see any issue which could limit or prohibit such an update?
>> If not I could generate the needed code and submit it to you guys for
>> validation.
>> Bien cordialement,
>> Philippe
>>
>> Philippe CARL
>> Laboratoire de Bioimagerie et Pathologies
>> UMR 7021 CNRS - Université de Strasbourg
>> Faculté de Pharmacie
>> 74 route du Rhin
>> 67401 ILLKIRCH
>> Tel : +33(0)3 68 85 41 84
>>
>> --
>> ImageJ mailing list: http://imagej.nih.gov/ij/list.html
>>
>
> --
> ImageJ mailing list: http://imagej.nih.gov/ij/list.html
>

--
ImageJ mailing list: http://imagej.nih.gov/ij/list.html