小编jta*_*ria的帖子

在ggvis中绘制堆积区域图的正确方法是什么?

我正在尝试使用新ggvis包绘制堆积区域图.

ggplot,我设法做到这样:

d<- data.frame( 
  time=as.numeric( rep( 1:100, 100 ) ), 
  class=as.factor( sample( 7, 100000, replace=TRUE ) ) 
)

t <- as.data.frame( table( d$time, d$class ) )

ggplot( t, aes( x=as.numeric( Var1 ), y=Freq, fill=Var2 ) ) +
  geom_area( stat="identity" )
Run Code Online (Sandbox Code Playgroud)

在此输入图像描述

有了ggvis,我设法使用条形图在相同的布局中绘制相同的数据:

ggvis( t, x=~as.numeric( Var1 ), y=~Freq, fill=~Var2 ) 
  %>% group_by( Var2 )
  %>% layer_bars()
Run Code Online (Sandbox Code Playgroud)

在此输入图像描述

但我不知道怎么说ggvis我想要的是区域,而不是酒吧.layer_areas不存在,都layer_pathslayer_ribbons给我错误的结果.

我玩过路径和缎带的道具,但我无法弄清楚如何分辨ggvis出相互叠加的区域.

使用绘制堆积区域图的正确方法是ggvis什么?

plot r ggvis

5
推荐指数
1
解决办法
851
查看次数

如何从 Lucene 中的文档术语向量中获取位置?

我需要遍历 Lucene 索引中的所有文档,并获取每个术语在每个文档中出现的位置。据我从 Lucene javadoc 中了解到,这样做的方法是做这样的事情:

IndexReader ir = obtainIndexReader();
Terms tv = ir.getTermVector( doc, field );
TermsEnum terms = tv.iterator();
PostingsEnum p = null;
while( terms.next() != null ) {
    p = terms.postings( p, PostingsEnum.ALL );
    while( p.nextDoc() != PostingsEnum.NO_MORE_DOCS ) {
        int freq = p.freq();
        for( int i = 0; i < freq; i++ ) {
            int pos = p.nextPosition();   // Always returns -1!!!
            BytesRef data = p.getPayload();
            doStuff( freq, pos, data ); // Fails miserably, of course. …
Run Code Online (Sandbox Code Playgroud)

java lucene

5
推荐指数
1
解决办法
2201
查看次数

标签 统计

ggvis ×1

java ×1

lucene ×1

plot ×1

r ×1