我想對 ggplot2 中的垂直線應用連續的顏色漸變。我的情節如下。我已將連續色帶應用于geom_line()元素,而水平線表示色帶覆寫的范圍的限制,并進行了適當的著色。我希望左側的垂直線顯示兩條水平線之間的色帶的全部范圍。
我試過geom_segment(aes(color=dwsTempOutC))(dwsTempOutC 是我的 y 軸變數),但正如您在影像中看到的那樣,它只對線條應用了一種顏色。
我想我可以通過生成一系列短線段并從漸變應用離散顏色到每個線段來實作連續的顏色漸變,但我希望有一種不那么笨拙的方法來做到這一點。

uj5u.com熱心網友回復:
問題是,當使用geom_segmentthen 時,只有一個段。但是,除此之外,ggforce::geom_link您還可以使用以下方法獲得相同的結果geom_line:
使用一些虛假資料:
df <- data.frame(
x = seq(0, 2 * pi, length.out = 100),
y = sin(seq(0, 2 * pi, length.out = 100))
)
library(ggplot2)
ggplot(df, aes(x, y, color = y))
geom_line()
geom_line(data = data.frame(x = -.5, y = seq(-1, 1, length.out = 100)))
scale_color_viridis_c()

uj5u.com熱心網友回復:
正如@stefan 在我們可以geom_link2從ggforce包中使用的評論中所建議的那樣,這里有一個例子:
library(tidyverse)
library(ggforce)
ggplot(mtcars, aes(x=cyl, y=mpg))
geom_point()
geom_link2(aes(x = 5, y = mpg, colour = mpg), size=2)
scale_color_gradient2(midpoint=mid, low="green", mid="white",
high="red")

轉載請註明出處,本文鏈接:https://www.uj5u.com/shujuku/432014.html
下一篇:Rplotly顯示游標坐標
