Limitted access. First login to DataMelt if you are a full DataMelt member. Then login to HandWiki as a user.

A spreadsheet is an interactive computer application for organization, analysis and storage of data in tabular form. All data containers (including histograms and functions) can be shown as a table (the class class  jhplot.HTable or inside a spreadsheet, see the class  jhplot.SPsheet. To show data in table, use the method "toTable()". To show data in a spreadsheet, initialize the class  jhplot.SPsheet with an data object as an argument.

You can call a spreadsheet from the menu bar [Tool]->[Spreadsheet]. You will see the table. Another way to start is to use Jython prompt and type:

a=SPsheet()

You will see the spreadsheet again, but now you can "talk" to it since you have a created a "spreadsheet" object "a". Type "a." + [Ctrl]+[Space]. You will see many methods associated with the class "SPsheet". You can insert data, remove, while watching how the data are changed in the spreadsheet.

The spreadsheet is based on SharpTools package and have:

• A Friendly Interface
• Compatibility with Microsoft Excel
• Configurable Preferences
• Formulas and References, File Operations
• Clipboard Operations
• Undo and Redo, insertion and Deletion of Rows and Columns
• Sorting Operations, Find and Find Next, Histograms

The spreadsheet configuration file is located in ".jehep/" directory (linux) and called "sharptools.ini".

## Showing comma-separated values (CSV) files

Comma-separated values (CSV) files can be shown either by loading the file from the menu of the spreadsheet, or inserting the data as a object in a programmatic manner.

### Input

Data is input to cells in the workspace. When a cell is clicked on, or highlighted, it is said to be selected. To make a cell editable, double-click on it. To select a range, select a cell and drag the mouse over the desired region. The range will be highlighted.

Sharp Tools Spreadsheet allows for user-defined formula input, such as:

 =1+54 =B10^(5-2) =AVERAGE(C1:C10) =SUM(C2:C7)/2 

Sharp Tools Spreadsheet allows nearly arbitrary variable-length parameter input to most formulas using

literals: -1, 0, 100
absolute addressing: $A$2, $B$5, $E$7
range specification: C1:C10, A2:B2

### Functions

Functions are predefined formulas that perform calculations by using specific values, called arguments, in a particular order or structure.

Arguments can be numbers or cell references. A cell reference can be a single cell or a range of cells. A single cell can use relative addressing (A1) or absolute addressing ($B$5). A range of cells is specified by a pair of diagonal cells (A1:C5 or $A$1:$C:$5). Different functions have difference requirements on the number or type of parameters.

The structure of a function begins with the an equal sign (=), the function name, an opening parenthesis, the arguments for the function separated by commas, and a closing parenthesis.

=FUNCTION(ARGUMENT1,ARGUMENT2,...)

Sharp Tools Spreadsheet implements various symbolic formula operations:

   ABS

   usage: =ABS(argument)

   Returns the absolute value of is argument.

   Example: =ABS(-1) returns 1.
AVERAGE

   usage: =AVERAGE(argument1,argument2,...)

   Returns the average (arithmetic mean) of its arguments.
COUNT

   usage: =COUNT(argument1,argument2,...)

   Returns the number of its arguments.

   Example: =COUNT(A1:A25,B1) returns 26.0.
E

   usage: =E()

   Returns an approximation of the golden mean. Takes no arguments.

   Example: =E() returns 2.7182817
INT

   usage: =INT(argument)

   Returns the integer portion of its argument.

   Example: =INT(94.99) returns 94.0.
LOG

   usage: =LOG(argument)

   Returns the logarithm base e of its argument.

   Example: =LOG(E()*E()) returns 2.0.
MAX

   usage: =MAX(argument1,argument2,...)

   Returns the largest number among its arguments.

   Example:=MAX(99.99,100,99.9999) returns 100.0.
MEANDEV

   usage: =MEANDEV(argument1,argument2,...)

   Returns the largest average absolute deviation of its arguments.
MEDIAN

   usage: =MEANDEV(argument1,argument2,...)

   Returns the largest average absolute deviation of its arguments.
MIN

   usage: =MIN(argument1,argument2,...)

   Returns the largest average absolute deviation of its arguments.
PI

   usage: =PI()

   Returns an approximation of pi. Takes no arguments.
RANGE

   usage: =RANGE(argument1,argument2,...)

   Returns the difference between MAX and MIN of its arguments.
ROUND

   usage: =ROUND(argument)

   Returns the nearest integer value of its argument.
SQRT

   usage: =SQRT(argument)

   Returns the square root of its argument.
SUM

   usage: =SUM(argument1,argument2,...)

   Adds up the specified arguments.
STDDEV

   usage: =STDDEV(argument1,argument2,...)

   Returns the standard deviation of its arguments.
TRIG

   TRIG can be any one of the trigonometric functions SIN, COS, TAN, ASIN, ACOS, or ATAN.
All trigonometric functions take only one parameter input, which is specified in radians.

   usage: =TRIG(argument)

   Example: =COS(2*PI()) returns 1.0.



### Errors

Errors are of the form #ERROR?, where ERROR is the type of error. There are several errors that are possible when entering formulas:

   #PAREN: Missing a parenthesis.

   Example: =SUM(A1:A25
#NUM?: Improper number format.

   Example: 2.3.4
#OP?: Improper use of an operator.

   Example: =2++3
#NAME?: An unknown syntax.

   Example: =AD
#REFS?: A cell that does not exist has been referenced.
#ADDR?: An invalid cell has been referenced.

   Example: =1A
#EVAL?: The input cannot be evaluated properly.

   Example: =A4:B4+1
#FUNC?: An unknown function has been used

   Example: =NOP()
#PARAM?: Too many or too few arguments specified.

   Example: =MIN()