我正在寻找创建一个可在Web浏览器中查看的静态仪表板.而且我想创建像Stephen Few在他的书" 信息仪表板设计"中所做的那样的事情.(见底部示例)
如果网格可以很容易地做到这一点,你知道有什么好的资源来学习如何使用它吗?我已经阅读了手册,但我发现它没有太大帮助.我见过LearnR博客的ggplot2销售仪表板(它使用网格),我无法理解网格和布局部分内容.
dasboard示例http://img251.imageshack.us/img251/1029/fewciodashboard800.png
我有一个像这样的刻面情节:
ggplot(mtcars, aes(x = hp, y = mpg)) +
geom_point() +
facet_grid(. ~ carb)
Run Code Online (Sandbox Code Playgroud)
我希望能够把最右边的三个位置放在最左边的三个位置,即小平面应该是三列*这样的两行.
Run Code Online (Sandbox Code Playgroud)1 2 3 4 5 6
是否可以设置构面的布局,即设置列数(或行数)facet_grid()?
facet_grid上的文档似乎并不表示它是可能的.
谢谢您的帮助 :-)
我已经花了几个星期的时间学习一些R而且我对它的光滑和强大感到很沮丧.我正在使用它来绘制从SQL查询返回的一些数据,我希望能够通过Web门户与我合作的其他人共享这些图.
我意识到我可以创建一个cron作业来运行Web服务器上的R脚本,每天创建图表,从网站上查看图像.但有什么方法可以设置,只有当用户查看页面时才创建图像?这样我就可以创建一个Web界面,让用户为SQL查询选择日期范围等.(然后让R分析数据并绘制它)
有什么建议?
我在RGui中的输出窗口有一个奇怪的问题(在Win XP下).我应该看到一个类似下面的情节......
替代文字http://img402.imageshack.us/img402/7483/ss20100121153931.png
...当我运行这个脚本时:
library(ggplot2)
x <- rnorm(100,0,1)
y <- rnorm(100,0,1)
z <- data.frame(x,y)
g <- ggplot(z, aes(x,y)) + geom_point() + theme_gray()
Run Code Online (Sandbox Code Playgroud)
相反,在绘图窗口中,它显示白色背景和白色网格线,如下所示.
R绘图窗口
替代文字http://img192.imageshack.us/img192/5349/ss20100121160230.png
当我将绘图导出到.png并在Windows资源管理器中"预览"它时 - 它不显示背景或网格线.
在Windows中的Png
替代文字http://img192.imageshack.us/img192/5349/ss20100121160230.png
Gimp中的Png相同
替代文字http://img402.imageshack.us/img402/7483/ss20100121153931.png
相同的Png上传到图片托管
替代文字http://img402.imageshack.us/img402/7483/ss20100121153931.png
关于发生了什么的任何想法?如何让图表在RGui中正确显示?
是否可以通过rJava/JRI在Processing中运行R?如果我在网络上部署了一个Processing应用程序,客户端是否需要在他们的系统上使用R?
我正在寻找一个可以在网络上部署的交互式信息仪表板.对于互动/网络部分而言,Processing似乎是我最好的选择.不幸的是,它看起来并不像内置的许多数学/统计功能.并且没有任何用于绘制数据的库.
我一直在使用R和gpplot2几个月,我很高兴(惊讶)它操作和绘制数据的容易程度.
所以我现在想知道是否可以获得两全其美并通过Processing applet运行R.
来自JRI网站:
JRI是一个Java/R接口,它允许在Java应用程序中作为单个线程运行R. 基本上它将R动态库加载到Java中,并为R功能提供Java API.它支持对R函数的简单调用和完整运行的REPL.
从某种意义上说,JRI是rJava的反转,两者都可以组合在一起(即你可以在JRI中运行R代码,通过rJava回调JVM).JGR项目充分利用JRI和rJava为R提供完整的Java GUI.
JRI使用本机代码,但它支持Sun的Java(或兼容)可用的所有平台,包括Windows,Mac OS X,Sun和Linux(32位和64位).
感谢您的建议 :)
关于ggplot2中的facetting,我有几个问题...
假设我有一个返回如下所示数据的查询:
(请注意,它按Rank asc排序,警报asc和两个警报的等级为3,因为第4周的总计= 1798,而第4周按照总计设置排名)
Rank Week Alarm Total
1 1 BELTWEIGHER HIGH HIGH 1000
1 2 BELTWEIGHER HIGH HIGH 1050
1 3 BELTWEIGHER HIGH HIGH 900
1 4 BELTWEIGHER HIGH HIGH 1800
2 1 MICROWAVE LHS 200
2 2 MICROWAVE LHS 1200
2 3 MICROWAVE LHS 400
2 4 MICROWAVE LHS 1799
3 1 HI PRESS FILTER 2 CLOG SW 1250
3 2 HI PRESS FILTER 2 CLOG SW 1640
3 3 HI PRESS FILTER 2 CLOG SW 1000 …Run Code Online (Sandbox Code Playgroud) 我有一个MS SQL Server表,记录我们工厂的报警事件,每个报警都有一行,而日期时间列则记录报警发生的时间.
我们以12小时轮班(早上6点到下午6点,下午6点到早上6点)运行我们的工厂.我需要弄清楚我们每次换班的警报数量.如何对结果进行分组以获得该结果?
原始表看起来像这样:
DateTime Alarm Name
2010-01-05 14:32:22 Overpressure
2010-01-05 21:32:59 Underspeed
2010-01-06 05:58:13 Underspeed
2010-01-06 06:02:46 Machine Current Fault
Run Code Online (Sandbox Code Playgroud)
我们需要将结果分组如下:
Date Shift Count
2010-01-05 Day 1
2010-01-05 Night 2
2010-01-06 Day 1
Run Code Online (Sandbox Code Playgroud)
请注意,如果在1月5日下午6点到1月6日上午6点之间发生警报,则从1月5日开始计算夜班.
有什么建议?