我正在尝试根据在植被中测量Cu水平时采样的物种对R中的地块进行颜色编码。
我编写了应该提供正确颜色的代码,当将其添加到以“ plot”开头的代码行中时,颜色代码有效,但是,当我尝试将其添加到“点”中时,颜色与之前的绘图线相同,即未指示正确的种类。
在下图中,您可以看到一半的点是黑色的-但是,当我在代码中将“ col = color”添加到“ points”时,黑色的点变成与已经存在的点相同的颜色彩色的,这是不正确的。 有谁知道我如何确保代码可同时用于原始图和添加点?
package main
import (
"fmt"
"encoding/json"
)
type parent struct {
Attr int `json:"attr"`
}
type child struct {
parent
Attr int
}
func main() {
var c child
json.Unmarshal([]byte(`{"attr": 1}`), &c)
fmt.Println(c.Attr)
fmt.Println(c.parent.Attr)
}
我的绘图示例没有正确的颜色
答案 0 :(得分:0)
由于我不知道您的数据,我不能确定确切的问题是什么。
但是我建议尝试以下方法:
cols <- c("blue", "red", "darkmagenta", "gold", "violetred1", "lawngreen", "black")
All_data_with_H$Species <- as.factor(All_data_with_H$Species)
plot(Distance_m[Location=="T1"], Cu_V[Location=="T1"], xlab = "Distance
(m) along transects", ylab = "Cu (µg/g) in vegetation", ylim = c(0,30),
col = cols[All_data_with_H$Species[Location=="T1"]],
pch = 20, frame.plot=FALSE, box(bty="l"))
points(Distance_m[Location=="T2"], Cu_V[Location=="T2"],
col = cols[All_data_with_H$Species[Location=="T2"]], pch = 20)
我希望对您有用。
“把戏”是这样的:
facs <- as.factor(c("A", "B", "B", "C", "A", "B", "C", "C"))
cols <- c("red", "blue", "green")
cols[facs]
[1] "red" "blue" "blue" "green" "red" "blue" "green" "green"
因此,基本上,您将根据要在color
和plot
中显示的子集动态地创建points
向量。