小编Mar*_*rio的帖子

ggplot:每个方面的刻面条形图中的订单条

我在R中有一个数据框,我想在一个刻面的ggplot条形图中绘制.

我在ggplot中使用此代码:

ggplot(data_long, aes(x = partei, y = wert, fill = kat, width=0.75)) + 
    labs(y = "Wähleranteil [ % ]", x = NULL, fill = NULL) +
    geom_bar(stat = "identity") +
    facet_wrap(~kat) +
    coord_flip() +
    guides(fill=FALSE) +
    theme_bw() + theme( strip.background  = element_blank(),
                        panel.grid.major = element_line(colour = "grey80"),
                        panel.border = element_blank(),
                        axis.ticks = element_line(size = 0),
                        panel.grid.minor.y = element_blank(),
                        panel.grid.major.y = element_blank() ) +
    theme(legend.position="bottom") +
    scale_fill_brewer(palette="Set2")
Run Code Online (Sandbox Code Playgroud)

这会生成此图表: 在此输入图像描述

您可以看到只有最后一个方面处于所需的降序.我希望所有方面按降序排序,这意味着标签顺序会发生变化.因此我还需要所有方面都有自己的y轴标签.

这是我正在使用的数据:

   partei   kat  wert
1      SP kand1 95.41
2   Grüne kand1 …
Run Code Online (Sandbox Code Playgroud)

r ggplot2 facets geom-bar

14
推荐指数
1
解决办法
3577
查看次数

将多层 RasterBrick 保存到硬盘

我有一个代表地形图的多层 RasterBrick,我想将其以 grd 或 tif 格式保存到硬盘,以便其他人以后可以使用。

这是 RasterBrick:

class       : RasterBrick 
dimensions  : 2400, 4200, 10080000, 3  (nrow, ncol, ncell, nlayers)
resolution  : 100, 100  (x, y)
extent      : 480000, 9e+05, 62000, 302000  (xmin, xmax, ymin, ymax)
coord. ref. : NA 
data source : in memory
names       :  layer.1,  layer.2,  layer.3 
min values  :   2.8725,   2.8725,   2.8725 
max values  : 254.5175, 254.5175, 254.5175 
Run Code Online (Sandbox Code Playgroud)

在此处输入图片说明

我试图用这个命令保存它:

outfile <- writeRaster(brick, filename='grid.tif', format="GTiff", overwrite=TRUE)  
Run Code Online (Sandbox Code Playgroud)

和这个:

outfile <- writeRaster(m, filename='grid.grd', format="raster", overwrite=TRUE)  
Run Code Online (Sandbox Code Playgroud)

但是 tif 文件已损坏,并且 …

tiff r raster

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

jQuery选择类但不是某些数据属性

我试图选择某个类的一些div元素但没有某些数据属性.例如,我有12个div,数据属性从1到12,我想选择所有这些除了数据属性为1,11和12的那些.这是我的(不工作)代码到目前为止:

$('div.randomize_class [data-value!=1],[data-value!=11],[data-value!=12]');
Run Code Online (Sandbox Code Playgroud)

目的是仅对匹配的div进行洗牌,并最终在结尾追加属性为1,11和12的div.混洗功能很好地工作,它只是选择选择类的一个子集.

所以在洗牌之后,我想只选择那些数据属性为1,11和12的人.我试过这个:

$('.randomize_class [data-value=1],[data-value=11],[data-value=12]')
Run Code Online (Sandbox Code Playgroud)

很高兴得到任何帮助!非常感谢你.

jquery jquery-selectors custom-data-attribute

4
推荐指数
2
解决办法
2213
查看次数

tmap 中具有颜色值的列

我有一个 SpatialPolygonsDataFrame,其中包含包含十六进制颜色值的列。我想用 tmap 包来绘制这样的地图:

tm_shape(full.shp) + tm_fill(col="konf1900")
Run Code Online (Sandbox Code Playgroud)

但随后它被视为类别变量,结果是: 截图 2016-11-01 10 15 53

我不知道如何告诉 tmap 它应该直接在地图上绘制颜色值......

有人可以帮忙吗?

编辑: 请参阅下面的答案 - 问题是数据帧列未编码as.character。我想这有时可能会对某人有所帮助......

r colors tmap

4
推荐指数
1
解决办法
2761
查看次数

R:在XY网格中查找缺失的组合

我有一个由X和Y坐标组成的大网格,每个坐标代表一个值。但是,网格内的某些组合不存在,请参见附图:缺少组合的网格

我想用R脚本识别缺少的xy组合,但是不知道该怎么做。获得这些组合的有效方法是什么?

我的数据示例:

df1 <- structure(list(coord_n = c(1065125L, 1065875L, 1064625L, 1064375L, 
    1065625L, 1065375L, 1065625L, 1065125L, 1065625L, 1065125L, 1066125L, 
    1064625L, 1066375L, 1064125L, 1064375L, 1064625L, 1066375L, 1064875L, 
    1066125L, 1066625L, 1064375L, 1065125L, 1066375L, 1066625L, 1065125L, 
    1065875L, 1064125L, 1064375L, 1064125L, 1065875L, 1064625L, 1065125L, 
    1065125L, 1065625L, 1066375L, 1064375L, 1064875L, 1065875L, 1066375L, 
    1066625L, 1064375L, 1064625L, 1066375L, 1065875L, 1065375L, 1065375L, 
    1066625L, 1065375L, 1064625L, 1066625L, 1066125L, 1065625L, 1065375L, 
    1065875L, 1064125L, 1064375L, 1064875L, 1065625L, 1065625L, 1064625L, 
    1064875L, 1065375L, 1065875L, 1065875L, 1066625L, 1065875L, 1064875L, 
    1066625L, 1064875L, 1064125L, 1066125L, 1064375L, 1066375L, …
Run Code Online (Sandbox Code Playgroud)

r matrix dataframe data.table

3
推荐指数
2
解决办法
64
查看次数

ggplot2:更改条形图中每个构面的颜色

我用ggplot2用这段代码完成了刻面条形图:

ggplot(data_long, aes(x=region, y=wert)) + 
geom_bar(aes(fill = kat ), position = "dodge", width=.5, stat="identity") +
labs(y = "Wähleranteil [ % ]", x = NULL, fill = NULL) +
facet_grid(. ~ type) +
theme_bw() + theme( strip.background  = element_blank(),
                    panel.grid.major = element_line(colour = "grey80"),
                    panel.border = element_blank(),
                    axis.ticks = element_blank(),
                    panel.grid.minor.x=element_blank(),
                    panel.grid.major.x=element_blank() ) +
theme(legend.position="bottom") +
guides(fill=guide_legend(nrow=1,byrow=TRUE))
Run Code Online (Sandbox Code Playgroud)

刻面条形图

我希望每个方面都有自己的颜色,如下所示:

    partei   color
1 andere #636363
2    BDP #D0B100
3    CVP #FF8B07
4    EVP #65ECEF
5    FDP #5675D6
6    glp #77E599
7  Grüne #A3DD57 …
Run Code Online (Sandbox Code Playgroud)

r colors facet ggplot2 geom-bar

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

R ggplot2:如何使x轴线不与y轴重叠?

我经常从ggplot生成图表,我喜欢有灯光设计(白色背景等)这一切都很好,只是x轴线与y轴线重叠,请参见截图中的红色标记:

重叠轴,标记为红色

我想要的是如下所示,此刻,我必须编辑Illustrator中的每个绘图...我希望x轴不与y轴线重叠(不在右侧而不是在左侧) ).在我看来,这看起来更清洁.

我想要的是

有谁知道我怎么能做到这一点?到目前为止我还没有找到任何东西...所以任何帮助都非常感谢.

编辑(示例):

数据:

                                    label_de proz
 1:                        Dialekt / Sprache 37.6
 2:                               Landschaft 52.1
 3: Traditionen und Bräuche (Fasnacht, etc.) 20.4
 4:             Siedlungsraum (Gebäude usw.) 21.6
 5:   Sportclubs (Fussball, Eishockey, etc.) 13.4
 6:                     Freunde und Bekannte 61.7
 7:                                  Familie 57.0
 8:                 Bewohnerinnen / Bewohner 14.9
 9:   Kulinarisches Angebot (Essen, Trinken) 12.2
10:                          Freizeitangebot 18.6
11:                       Politisches Profil  5.8
12:                                  Anderes 13.1
Run Code Online (Sandbox Code Playgroud)

和ggplot代码(没有排序):

p <- ggplot(data=ggdata, aes(x=label_de, y=proz)  ) +
  geom_bar(stat="identity", position="dodge") +
  ylim(0,100) +
  coord_flip() +
  theme_bw() + …
Run Code Online (Sandbox Code Playgroud)

axis themes r ggplot2

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

data.table:表中所有现有组合的总和

我有一个out像这样的data.table (实际上它要大得多):

out <-      code weights group
        1:    2   0.387      1
        2:    1   0.399      1
        3:    2   1.610      1
        4:    3   1.323      2
        5:    2   0.373      2                                            
        6:    1   0.212      2
        7:    3   0.316      3
        8:    2   0.569      3
        9:    1   0.120      3
       10:    1   0.354      3
Run Code Online (Sandbox Code Playgroud)

它有3组不同的代码(第1列).在组#1中,代码3不出现,而在另一组中出现.

然后,我想对每个组和代码组合的权重求和.我用这个命令实现了这个目的:

sum.dt <- out[,.(sum(weights)), by=list(code,group)][order(-V1)]
Run Code Online (Sandbox Code Playgroud)

这种方法效果很好但它没有组合1和代码3的组合,因为它不在out表中.我希望有所有可能的组合sum.dt,如果在源表中没有出现组合,它应该总和为0,这意味着V1该行在该行中应为0.

知道我怎么能做到这一点?

group-by r sum data.table

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