选择要与 sf.colors 一起使用的颜色
chose color to use with sf.colors
我正在使用 sf
包构建静态地图,我希望我的地图具有特定的颜色和透明度。我可以设法让两者独立但不能在一起。
library(sf)
nc = st_read(system.file("gpkg/nc.gpkg", package="sf"), quiet = TRUE)
我可以简单地让地图全红:
plot(nc["SID74"], col="red")
产生:
如果我想添加透明度,我必须更改 col
参数并将其传递给 sf.colors
调用:
plot(nc["SID74"], col=sf.colors(n=1, alpha=0.3))
产生:
我有透明度,但它是默认的蓝色,我在 ?sf.colors
中找不到将其更改为红色的选项。我要设置颜色还要有透明度
知道怎么做吗?
如果您有想要使用的特定颜色,则无需使用 sf.colors
函数。这会为您选择一个调色板。 sf.colors
函数不是为绘图设置颜色的唯一方法,如果您想在其他地方使用它们,它只是公开 sf
使用的默认颜色。
如果你想调整现有颜色的透明度,scales
包有一个辅助函数可以做到这一点。
plot(nc["SID74"], col=scales::alpha("red", .3))
可以看到scales::alpha("red", .3)
returns
[1] "#FF00004D"
所以它基本上是一个 rgb-hex 值,带有一个额外的透明字节。您还可以使用 rgb()
函数来构造类似的对象。
我正在使用 sf
包构建静态地图,我希望我的地图具有特定的颜色和透明度。我可以设法让两者独立但不能在一起。
library(sf)
nc = st_read(system.file("gpkg/nc.gpkg", package="sf"), quiet = TRUE)
我可以简单地让地图全红:
plot(nc["SID74"], col="red")
产生:
如果我想添加透明度,我必须更改 col
参数并将其传递给 sf.colors
调用:
plot(nc["SID74"], col=sf.colors(n=1, alpha=0.3))
产生:
我有透明度,但它是默认的蓝色,我在 ?sf.colors
中找不到将其更改为红色的选项。我要设置颜色还要有透明度
知道怎么做吗?
如果您有想要使用的特定颜色,则无需使用 sf.colors
函数。这会为您选择一个调色板。 sf.colors
函数不是为绘图设置颜色的唯一方法,如果您想在其他地方使用它们,它只是公开 sf
使用的默认颜色。
如果你想调整现有颜色的透明度,scales
包有一个辅助函数可以做到这一点。
plot(nc["SID74"], col=scales::alpha("red", .3))
可以看到scales::alpha("red", .3)
returns
[1] "#FF00004D"
所以它基本上是一个 rgb-hex 值,带有一个额外的透明字节。您还可以使用 rgb()
函数来构造类似的对象。