Я хотел бы создать функцию, которая принимает некоторые входные данные, на основе которых она возвращает объект графика, подобный показанному ниже:
![enter image description here](https://i.stack.imgur.com/bS9oz.png)
Две половины - это зеркальные изображения с точки зрения положения и цвета циферблата, но текст в центре и метки отличаются. Я видел несколько примеров, но они не полностью покрывают то, что мне нужно:
- ggplot Кольцевая диаграмма
- Диаграмма шкалы положения набора номера Plotly R ,
- https://www.r-graph-gallery.com/doughnut-plot.html
- Скрыть метки на графике кольцевого графика r
пример кода
Попытка первой верхней части графика сначала с использованием plotly
:
plot_func <- function(current_value){
fig <- plot_ly(
domain = list(x = c(0, 1), y = c(0, 1)),
value = current_value,
title = list(text = "Rating"),
type = "indicator",
mode = "number+gauge",
gauge = list(
axis =list(range = list(100, 85)),
bar = list(
# color = 'white',
# line = list(width = 1),
thickness = 0
),
steps = list(
list(range = c(85,90), color = "#b20000", name = 'E'),
list(range = c(90,92.5), color = "#e09999", name = 'D'),
list(range = c(92.5, 95), color = "#ffffb2", name = 'C'),
list(range = c(95, 97.5), color = '#7fbf7f', name = 'B'),
list(range = c(97.5,100), color = "#008000", name = 'A')),
threshold = list(
line = list(color = "red", width = 4),
thickness = 0.75,
value = current_value)))
return(fig)
}
myplot <- plot_func(current_value = 99.8)
Это дает вывод: ![enter image description here](https://i.stack.imgur.com/mTegO.png)
Я не могу найти способ:
- Имею непрерывный цветовой диапазон, а не пошаговое изменение, которое я имею сейчас
- изменить красную полосу для
current_value
вместо стрелки
Любая помощь приветствуется.