我有一个笛卡尔坐标数据集。我想制作一个基本的散点图,其中每个点都根据预设的颜色向量进行着色。这很容易通过以下示例实现。
# A hypothetical dataset
XCoords<-c(1,3,5,6,8)
YCoords<-c(3,9,4,3,4)
# Sorry for picking such ugly colors, its just an example
Colors<-c("#FDA75F","#F1E19D","#E5AC4D","#FDC07A","#FDB46C")
# Plot the scatter plot
plot(x=XCoords,y=YCoords,pch=16,col=Colors)
Run Code Online (Sandbox Code Playgroud)
但是,如果我想使用 type="o" 或 type="b"(取决于系统)在点之间绘制一条线,则该线的颜色将默认为Colors向量中的第一种颜色。
# An example using type="o"
plot(x=XCoords,y=YCoords,pch=16,col=Colors,type="o")
Run Code Online (Sandbox Code Playgroud)
如果我希望线条是完全不同的颜色,例如黑色怎么办?换句话说,如何将连接点的线的颜色设置为独立于点的配色方案。
我专门在 base(没有 ggplot)中寻找解决此问题的方法,理想情况下,它不会要求我在两个单独的步骤中绘制线条和点(尽管如果这是唯一的方法,那也没关系)。
我认为正确的方法实际上是分两步完成:
plot(x=XCoords,y=YCoords,pch=16,col=Colors)
lines(x = XCoords,y=YCoords,col = "black")
Run Code Online (Sandbox Code Playgroud)