Близкие,
Я пытаюсь получить шестнадцатеричные коды цветов из палитры wesanderson
, когда для нее установлено непрерывное число цветов, превышающее заранее определенное количество цветов.
library('wesanderson')
Чтобы получить все шестнадцатеричные коды предопределенных палитр:
wes_palettes
Однако как получить шестнадцатеричные коды следующего графика:
wes_palette(21, name = "Zissou1", type = "continuous")
Попробуйте unclass
.
> library('wesanderson')
> pal <- wes_palette(21, name = "Zissou1", type = "continuous")
> unclass(pal)
[1] "#3A9AB2" "#54A5B9" "#6FB2C1" "#80B6BB" "#91BAB6" "#9BBDAC" "#A5C2A3" "#B1C492" "#BDC881"
[10] "#CCC967" "#DCCB4E" "#DFC12F" "#E3B710" "#E4A70A" "#E79805" "#E98905" "#EC7A05" "#ED6803"
[19] "#EF5703" "#F03801" "#F11B00"
attr(,"name")
[1] "Zissou1"
Объяснение:
pal
, возвращаемый объект имеет вид:
> class(pal)
[1] "palette"
и pal
или явно print(pal)
отправит метод print.palette
, создающий график.
unclass
удаляет дополнительные классы и оставляет класс базового слоя, который:
> class(unclass(pal))
[1] "character"
и который отправит print.default
.
Чтобы показать шестнадцатеричные коды цветов, мы можем использовать text()
:
> pal
> text(x=seq_along(pal), y=.75, labels=pal, srt=90, col='black')
@MsGISRocker обслужен! Смотрите обновление.
:-) Привет, здорово! :-)
Самая крутая штука, вероятно, была бы с графиком, показывающим шестнадцатеричные коды для каждого цвета.