Airline Traffic 的原始论文和 d3.js 给出的实现更漂亮,关键在于月份和月份之间微妙的嵌套布局方式:

<http://mbostock.github.com/d3/ex/calendar.html>

相比之下,以上 calendarPlot() 和 ggplot2 的布局则略微不给力啊。前者是完全没想整合,后者则在某一侧出现了一次以上的凸起。

另外,对这个图,时序越长效果越好。

好温馨的一篇文章~~
[未知用户] 赞d3。被这些基于JS的作图工具熏陶久了,觉得R的图形总是有一股土味儿,欠修饰:)

另外,呼叫作者和编辑大人,链接中的单词最好用减号-分开,如calendar-heatmap。
    没有40度的大片颜色,怎能显示出武汉火炉威力呀~那个生活用品是?
    [未知用户] JS作的图真是不错。
    [未知用户] 日平均气温,历史上好象只有一回达到过40。生活用品的谜底就在标题中。
    我还以为生活用品是「大烟枪」 。。。
    [未知用户] 那个生活用品是“日历”啊,呵呵
    6 天 后
    13 天 后
    我用chrome阅读,看到的文章在浏览器的标签页中显示的都是

    %post_author_nickname%: 日历中的夏天 | 统计之都 (中国统计学门户网站,免费统计学服务平台)
    这样的,%post_author_nickname%是否是哪里出错了?
    15 天 后
    楼主简单演示了日历热图的绘制过程,蛮有意思也备受启发,谢谢楼主的介绍。
    这两天研究了下,由于R的基础薄弱,有两个问题需要请教下:
    1、基于openair包calendarPlot函数绘制的日历图,对中文的支持似乎不太好,比如下面的星期X未完全显示,另外,如楼主第三种方法,calendarPlot函数不能突出显示某一阈值之上的格点,不知道这两个问题通过改变calendarPlot函数某些参数能否改善?
    2、基于ggplot绘制的图形似乎更灵活,但是背景的灰色方格与fill渲染的方格不重叠,而且方格中未能显示日期(1-31)(这个似乎可以再加一层解决),但是在布局上似乎不如calendarPlot函数绘制的更接近于日历形式,能否通过某些参数的改变使得外观和布局上能与calendarPlot函数绘制的日历图一致呢?

    望楼主指点一二,谢谢!
    [未知用户] 楼上这位仁兄研究好仔细啊,第一个关于calendarPlot函数研究不多。第二个改变布局应该可以的,在aes确定X轴和Y轴映射的时候,monthweek, weekdayf两个变量可以前后调换一下位置。背景的话可以将那些grid干掉,或是用其它的主题,看起来就清静很多。目前应该想到这么多吧。
    [未知用户] 多谢指教!
    我将monthweek, weekdayf置换过位置看过效果,这个能理解。
    R作图很强大,看来需要慢慢修练呢……
    楼主好热心,赞一个!
    还有一个问题想了好久,望楼主再指点下:
    在基于某个包的函数进行绘图时,如果想对图形做些更改或添加元素可以怎么实现呢?比如以openair里的calendarPlot函数为例,想在图形中加一个文本内容,可以怎么做呢?在calendarPlot()参数里加入了mtext()内容,但是没有效果,不知道是不可行还是未加对位置? 另外,图形输出时的margin问题,似乎也不能改变?
    (只是就这个例子琢磨下怎么利用好一个包,没有吹毛求疵的意思)
    2 个月 后
    作者使用武汉的平均气温做分析当然会得到夏天时间比较长的结论, 如果采用全国的平均气温做分析, 气象学上的夏天区间和日历上的夏天区间可能差别不多.
    2 年 后
    为什么factor函数里要用rev?
    这里还有一个严重的问题,前面算一周中第几天的时候认为周日是第一天,后面算是某天是第几周的时候由把周日当作是最后一天归到前一周中去了。