Comments (6)
As indicated in the answer on SO, this is NOT a bug in RJSONIO
. It is just a difference in how jsonlite
and RJSONIO
treat data frames. We will be switching to jsonlite
in the long run, as shiny
adopts jsonlite
, but until then it will be RJSONIO
. You can use the htmlwidgets:::to_json
function to convert your data frame to a list of records and then feed it to RJSONIO::toJSON
to get the desired output.
from htmlwidgets.
We can't convert to jsonlite until Shiny converts to jsonlite, and Shiny
can't do this until it has all the right knobs to allow it to emulate some
of the behaviors of RJSONIO. We'd certainly all like to do this but it's
not really possible right now so I'd suggest you figure out a local
workaround.
On Fri, Feb 6, 2015 at 1:33 PM, Enzo [email protected] wrote:
I've just found a problem in the conversion(s) between data.table and
RJSONIO.
This is affecting the library I developed: rpivotTable here
https://github.com/smartinsightsfromdata/rpivotTable
I have documented the problem with reproducible code here
http://stackoverflow.com/questions/28372298/json-issue-bug-with-data-table-and-rjsonio-jsonlite
and reported it to the data.table project.
I think it strengthen the case for htmlwidgets conversion to adopting
jsonlite (which does not appear to have the issue).—
Reply to this email directly or view it on GitHub
#77.
from htmlwidgets.
Solution is easy and should be in smartinsightsfromdata/rpivotTable#7 with extensive discussion/debate smartinsightsfromdata/rpivotTable#5.
from htmlwidgets.
The issue here is that @timelyportfolio pull is not a "solution" but is a bypass (of course no disrespect intended). The problem is occurring with iris dataset as iris has a dot in colnames (eliminating the dot eliminates the problem) and is at the edge between data.table, RJSONIO and htmlwidgets. I wonder how the other packages developed with htmlwidgets behave with data.table (or if all have the "forced" conversion to data.frame proposed by @timelyportfolio ).
from htmlwidgets.
I don't consider this a workaround until data.table has its own toJSON conversion function. Until then I think converting to a standard R data structure with data.table's own built-in function is a solution and not a hack. Nothing is lost since we lose data.table when we go to JavaScript anyways.
from htmlwidgets.
As an example just look at how much JJ has had to add to support dates in dygraphs.
from htmlwidgets.
Related Issues (20)
- Binding resize method is never called. HOT 3
- Change between versions 1.5.4 and 1.6.0: Plotly output in nested tables is not showing HOT 1
- Use system2 to avoid shell injection HOT 5
- What's the License? HOT 1
- S3 generic/method consistency
- Accessibility support HOT 5
- `shouldEval()` probably shouldn't recurse over list-like structures that aren't actually lists
- JSON conversion is not consistent
- 1.6.2 from tags lies about its version HOT 3
- Release htmlwidgets 1.6.3
- Call "JS function" Incompatibility with other package (reactable) HOT 6
- Release htmlwidgets 1.6.4
- htmlwidgets 1.6.3 breaks sortable v0.5.0 bucket and rank lists HOT 2
- How to pass information into the ellipsis argument of the widget's custom HTML function?
- R not installing package HOT 1
- Add support for Observable Plot? HOT 5
- No Shiny reactivity HOT 1
- Sum of value showing NaN in summarywidget HOT 2
- htmlwidgets without packages in shinylive. HOT 8
- Issue with `saveWidget` Function HOT 1
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from htmlwidgets.