R and Calc: Bugs and Feature Requests
From Apache OpenOffice Wiki
This section is meant to keep track of the bugs plaguing the add-on, as well as any features people would like to see in upcoming versions. For now, there are three categories on this page:
- Bugs: things that need to be fixed urgently (ideally, in the next release).
- Feature Requests: things that need to be added at some point in the future, but are not necessary for the healthy functioning of the software.
- Implemented Requests: once anything in the categories above is implemented, it is moved here.
Bugs
- Passing the following code to RCalcDump causes a NullPointerException:
nls(y ~ a*x + b, data = data.frame(cbind(x = c(1.1, 2.1, 3, 3.9), y = c(1, 2, 3, 4))), start=list(a = 1, b = 1))
This is likely because the returned R object has embedded REXPs, functions, and environments.
- Passing
a<-127
to RCalcDump will cause it to print the outputs of the previous statement rather than this one. - R optional packages must be installed in the default R location... Otherwise they cannot be loaded.
- The add-on needs to be installed manually -- Tools > Extension Manager fails to install properly.
- Very slow in extremely large sets of data (probably due to using TCP/IP to send information).
- RCalcDump does not print matrices and frames properly, but prints columns instead.
- Missing values -- need a good way to deal with missing values. We cannot use a test for non-numeric values because of Factors in R.
- Installation with extension manager on us_en version of OOo OK, and works as desired, but on Hungarian version R Add-On menu item failed to show in the main menu.
Feature Requests
- Dynamic array output. As it stands, you need to know the size of the array if you want the RCalcCoder to output properly.
- Make it so the {$BASE} keyword can be replaced with code. Currently, RCalcCaller won't work with
{$OUT#A1}<-var(c(1,2,3,4))
But having such code support would be extremely useful.
- Make the actual syntax more intuitive and easier to use.
- The getOutputs() function in the RCalcInterface is very inefficient and should be replaced (note that this is a fairly substantial coding change).
- Make the coding window non-modal.
- Allow for saving scripts in spreadsheets.
- Make the "help()" function available through the add-on.
- Communication between data.frames and spreadsheets in Calc.
- Have the ability to update a persistent graphic. Here's the use case:
- User creates a graph (i.e. a histogram) from data.
- Data changes. User wishes to update the existing graph rather than generating a new one (b/c of format changes, etc.)
- This would be more useful if OpenOffice allowed dynamic linking of objects, which I don't think it does (so that updates to a linked object propagate to linked instances; something that MS Office does fairly well).
- Plotting:
- OOo has no mosaic plot which is a good visualization of summary-results of the data-pilot output. mosaicplot R function
- OOo has no fourfold plot Visualizing Categorical Data - also includes extended mosaic and much more
- Add a way to loop from the coding window... Even a simple Loop: command would be useful.
Future
Here is a List of Ideas. Requires more packages, GUI Interfaces and possibly some coding.
- Have GUI interfaces for:
- the ggplot package
- just more plotting
- spie chat this one implements pie charts with two parameters (radius and angle, with color codes). example + code
- evaluate Finance Packages for inclusion, with GUI Interface, programming helping functions, documentation, exampels:
- same for Social Sciences:
- collection of functions in Zelig (package (look at the long list of vignettes!, website) Zelig is an easy-to-use program that can estimate, and help interpret the results of, an enormous range of statistical models. It literally is "everyone's statistical software" because Zelig's simple unified framework incorporates everyone else's (R) code. - i think, working with a single framework is easier to implement.
- eRm: Rasch Model
- linking
- other interesting packages
- Have a look at the following wiki pages for other ideas to implement in the R way:
Implemented Requests
- Fixed bug: The following code doesn't seem to work in the RCalcCoder on Windows XP SP2, R 2.5.1:
rnorm(1)
{$OUT#A1}<-{$BASE}
- Fixed bug: The following code doesn't seem to work in the RCalcCoder on Windows XP SP2, R 2.5.1 (seems to be a one character input line problem):
3
{$OUT#A1}<-{$BASE}
- Fixed bug: The *.txt files used for GUI scripting don't load properly on many computers. May have something to do with using "library", and "require" might be a better option.
- Fixed bug: Passing the following code causes the RCalcCoder to crash:
3+3
{$OUT#C1}<-{$BASE}
- Fixed bug: As it stands, RCalcCaller can't read values from matrices with equations. This code does not work
=RTestConnection()
with a value of 0 or 1, it will throw an error if we refer to this in code. For example, try the code below:
// First, type =RTestConnection() in cell A1.
a <- {$A1}
a*3
- Fixed bug: RCalcCaller can't accept String inputs from cells.
- Fixed bug: Need to implement missing values.
- Implemented Feature: Need to implement error output -- right now, nothing happens in the coding window.
- Fixed bug: Need to implement error checking for GUI input fields.
- Fixed bug: Move the "About" window to the main menu, not the "Advanced" tab.