标签: facet

ElasticSearch附加的facet数据

我已经将我的弹性搜索实现配置为通过映射中的id来对结果进行分析,当我向用户显示该方面时,我需要能够显示代表它的人类可读名称.我需要的数据都存在于映射中,但我不确定如何将其作为方面的一部分返回.当然有可能吗?

考虑下面的例子,我想小面给我一些方法来关联thingIdthingName(或其他任何thing可能需要的属性):

制图

{
  thingId,
  thingName
}
Run Code Online (Sandbox Code Playgroud)

分面查询

{
  "facets":{
    "things":{ "terms":{ "field":"thingId" } }
  }
}    
Run Code Online (Sandbox Code Playgroud)

结果

{
  "hits":{
    "total":3,
    "max_score":1.0,
    "hits":[
      ...
    ]
  },
  "facets":{
    "things":{
      "_type":"terms",
      "missing":0,
      "total":3,
      "other":0,
      "terms":[
        {
          "term":"5",
          "count":1
        },
        {
          "term":"4",
          "count":1
        },
        {
          "term":"2",
          "count":1
        }
      ]
    }
  }
}
Run Code Online (Sandbox Code Playgroud)

编辑

关于Solr的这个答案建议我将两个属性(thingNamethingId)都面对,然后循环遍历两个方面结果集,假设项目的顺序是相同的.我不知道会有多可靠,但这是一个选择.

编辑2

这个答案表明,如果不将两个领域合并为一个单一的价值并且面对这个问题,就不可能做我想做的事情:thingId|thingName.不理想.

编辑3

这个答案建议将这些值组合成一个字段并在其上进行分面(如上所述),但它使用术语脚本来实现组合,因此不需要我索引值的组合形式.仍然不完美,但似乎是最糟糕的选择.

facet faceted-search elasticsearch

11
推荐指数
1
解决办法
1444
查看次数

在eclipse中编辑Java Facet设置

一些背景:在我的eclipse项目中,我遇到了可怕的"Java编译器级别与已安装的Java项目方面的版本不匹配"错误.我在OS X Snow Leopard上使用Eclipse Helios.

我在编辑eclipse和maven的java facet设置时遇到了问题.我到处搜索并说到项目属性 - >项目方面并在那里编辑版本.但是对于我的Eclipse实例,这些设置无法通过UI获得.

如何手动编辑java facet版本?

eclipse facet

10
推荐指数
1
解决办法
2万
查看次数

如何使用facet_wrap生成的空白空间?

我有一个构成n x m网格的刻面图.按照设计,最后一个(右下角)单元格总是空的,所以我想通过添加另一个ggplot对象来利用额外的空间.我目前的解决方案依赖于低级viewport方法,这种方法不是很优雅,需要对位置和大小进行一些硬编码.

相反,我认为空的空间可以通过其他方式到达,可能与gridExtra

这是一个最小的例子n=m=2.请注意,边缘未正确对齐,因此需要一些额外的工作来手动调整视口的参数,这是一种痛苦,特别是如果(n, m)之后进行更改.

library(ggplot2)
library(grid)
p <- qplot(displ, hwy, data = mpg[mpg$cyl != 5, ]) + 
       facet_wrap(~ cyl, nrow=2)
q <- qplot(date, unemploy, data = economics, geom = "line") + 
       labs(x = NULL, y = NULL)
p
print(q, vp=viewport(0.75, 0.275, 0.45, 0.45))
Run Code Online (Sandbox Code Playgroud)

在此输入图像描述

r facet ggplot2 gridextra grob

10
推荐指数
1
解决办法
1046
查看次数

R:在ggplot2中使用free_x重新排序facet_wrapped x轴

我正在尝试reorder使用scales = free_x在ggplot2 中也使用的小面包裹的绘图,但是重新排序功能没有正确地重新排序x轴.这是我正在运行的:

library(ggplot2)

df <- read.table("speaking_distribution_by_play.txt",
                 header = F,
                 sep = "\t")

ggplot(df, aes(x=reorder(V2, V3), y=V3)) + 
  geom_bar(stat = "identity") +
  facet_wrap(~V1, ncol = 4, scales = "free_x") + 
  opts(title = "Distribution of Speakers in Shakespearean Drama") + 
  xlab("Speaking Role") + 
  ylab("Words Spoken") +
  opts(axis.text.x=theme_text(angle=90, hjust=1))
Run Code Online (Sandbox Code Playgroud)

在从此制表符分隔文件中读取的数据框上运行该代码会生成一个图,其中每个分面图的x轴仅部分排序.SO上的其他人提出了一个非常相似的问题,但唯一提出的解决方案是使用网格排列.因为我的数据集比那个问题中的数据集要大得多,所以这不会是一个非常迅速的操作,所以我想问:有没有办法重新排序每个刻面图的x轴,以便显示尺寸增加(或减少)的条形?我非常感谢其他人可以在这个问题上提供任何帮助.

plot r facet ggplot2

10
推荐指数
2
解决办法
2705
查看次数

在seaborn facetgrid的各个方面设置轴限制

我正在尝试将每个方面的x轴限制设置为Seaborn facetgrid distplot的不同值.我知道我可以通过g.axes访问子图中的所有轴,所以我试图迭代它们并设置xlim:

g = sns.FacetGrid(mapping, col=options.facetCol, row=options.facetRow, col_order=sorted(cols), hue=options.group)
g = g.map(sns.distplot, options.axis)   

for i, ax in enumerate(g.axes.flat): # set every-other axis for testing purposes
        if i % 2 == 0[enter link description here][1]:
            ax.set_xlim(-400,500)
        else:
            ax.set_xlim(-200,200)
Run Code Online (Sandbox Code Playgroud)

但是,当我这样做时,所有轴都设置为(-200,200)而不是每个其他方面.

我究竟做错了什么?

python facet seaborn

10
推荐指数
2
解决办法
5644
查看次数

ggplot2:为每个方面添加具有总体中位数的hline

我想绘制一个水平小平面线与该方面的总体中位数.

我尝试了这种方法,但没有使用以下代码创建虚拟汇总表:

require(ggplot2)

dt = data.frame(gr = rep(1:2, each = 500),
            id = rep(1:5, 2, each = 100), 
            y = c(rnorm(500, mean = 0, sd = 1), rnorm(500, mean = 1, sd = 2)))


ggplot(dt, aes(x = as.factor(id), y = y)) +
  geom_boxplot() +
  facet_wrap(~ gr) +
  geom_hline(aes(yintercept = median(y), group = gr), colour = 'red')
Run Code Online (Sandbox Code Playgroud)

但是,为每个方面分别绘制整行数据集的中位数而不是中位数: 在此输入图像描述

过去,建议使用解决方案

  geom_line(stat = "hline", yintercept = "median")
Run Code Online (Sandbox Code Playgroud)

但它已经停止(产生错误"没有名为StatHline的统计数据").

另一个解决方案

 geom_errorbar(aes(ymax=..y.., ymin=..y.., y = mean))
Run Code Online (Sandbox Code Playgroud)

但它产生了

Error in data.frame(y = function …
Run Code Online (Sandbox Code Playgroud)

r facet median ggplot2

10
推荐指数
2
解决办法
6423
查看次数

在ggplot2中连续变量的方面

可能重复:
ggplot - 按功能输出的facet

ggplot2facets选择是伟大的显示的因素多条曲线,但我已经遇到了麻烦,学习连续变量高效地转换成因素在其中.使用以下数据:

DF <- data.frame(WindDir=sample(0:180, 20, replace=T), 
                 WindSpeed=sample(1:40, 20, replace=T), 
                 Force=sample(1:40, 20, replace=T))
qplot(WindSpeed, Force, data=DF, facets=~cut(WindDir, seq(0,180,30)))
Run Code Online (Sandbox Code Playgroud)

我收到错误: At least one layer must contain all variables used for facetting

我想Force~WindSpeed通过离散的30度间隔检查这种关系,但似乎facet需要将因子附加到正在使用的数据框上(显然我可以这样做DF$DiscreteWindDir <- cut(...),但这似乎是不必要的).facets在将连续变量转换为因子时有没有办法使用?

r facet ggplot2

9
推荐指数
1
解决办法
5991
查看次数

显示facet_grid中每个绘图的x轴和y轴

由于之前(此处)已经提出了类似的问题,但我无法根据我的具体问题调整解决方案.对于下面显示的每个图,应该有ax轴和y轴.

数据:

dput(df_nSubj)
structure(list(nSubj = c(10L, 10L, 10L, 10L, 10L, 10L, 10L, 10L, 
10L, 10L, 10L, 10L, 10L, 10L, 10L, 10L, 10L, 10L, 10L, 10L, 10L, 
10L, 10L, 10L, 20L, 20L, 20L, 20L, 20L, 20L, 20L, 20L, 20L, 20L, 
20L, 20L, 20L, 20L, 20L, 20L, 20L, 20L, 20L, 20L, 20L, 20L, 20L, 
20L, 30L, 30L, 30L, 30L, 30L, 30L, 30L, 30L, 30L, 30L, 30L, 30L, 
30L, 30L, 30L, 30L, 30L, 30L, 30L, 30L, 30L, 30L, 30L, 30L, 40L, …
Run Code Online (Sandbox Code Playgroud)

r facet ggplot2

9
推荐指数
2
解决办法
3901
查看次数

ggplot2和第一个数据点在一行

我正在创建两个图ggplot2,然后使用grid.arrange它们将它们合并在一起.我应该说这两个图也facet_grid用于视觉调整.

在此输入图像描述

我的问题是,底部的情节,实际上是一个数据表,最终在左侧和右侧被"切断",因为小平面的起始位置和结束位置.有没有办法让我调整一下?我想调整一下,所以积分不会被切断.

以下是重现它的数据:

   df <- structure(list(SurveyID = c(16L, 16L, 16L, 16L, 16L, 16L, 16L, 
16L, 16L, 16L, 16L, 16L, 16L, 16L, 16L, 16L, 16L, 16L, 16L, 16L, 
16L, 16L, 16L, 16L, 26L, 26L, 26L, 26L, 26L, 26L, 26L, 26L, 26L, 
26L, 26L, 26L, 26L, 26L, 26L, 26L, 26L, 26L, 26L, 26L, 26L, 26L, 
26L, 26L, 47L, 47L, 47L, 47L, 47L, 47L, 47L, 47L, 47L, 47L, 47L, 
47L, 47L, 47L, 47L, 47L, 47L, 47L, 47L, …
Run Code Online (Sandbox Code Playgroud)

r facet ggplot2

9
推荐指数
2
解决办法
387
查看次数

如何设置圆形小平面包裹y轴的限制?

我有这个情节,我需要围绕y轴,所以看起来是可以接受的除了我想不只是在y轴上显示1值的事实.我想在"scale_y_continuous"函数中添加"limit",以便每个facet图的限制对于各个facet是唯一的.

这里是仅在y轴上显示60和80的图

dat = data.frame(x = c(1,2,3,1,2,3),A=c(80.6, 82,83,60,61,62),A_up =c(81,84,85,62,63,64), A_low =c(79,78,81,59,58,57), group = c("z","z","z","y","y","y"))
ggplot(data=dat , aes(x=as.factor(x), y=A, group = 1)) + #, color =Group, group = Group 
  geom_line()  + geom_point() + # facet_wrap(~COUNTERPARTY_STRATEGY ,ncol=2)
  geom_errorbar(aes(ymax = A_up ,ymin = A_low), width = .25) +
     scale_y_continuous(breaks = seq(  floor(  (min(dat$A_low)-11)  /10)*10 ,
                                   ceiling(  (max(dat$A_up)+11) /10)*10,10 ),
                      labels = seq(  floor(  (min(dat$A_low)-11)  /10)*10 ,
                                   ceiling(  (max(dat$A_up)+11) /10)*10,10 )
                      ) +
    facet_wrap(~group ,ncol=2, scales = "free_y") 
Run Code Online (Sandbox Code Playgroud)

现在我在比例y连续中添加限制,它全局应用限制.

dat = data.frame(x = c(1,2,3,1,2,3),A=c(80.6, …
Run Code Online (Sandbox Code Playgroud)

r facet ggplot2

9
推荐指数
2
解决办法
1013
查看次数

标签 统计

facet ×10

ggplot2 ×7

r ×7

eclipse ×1

elasticsearch ×1

faceted-search ×1

gridextra ×1

grob ×1

median ×1

plot ×1

python ×1

seaborn ×1