最近,当我尝试在R中绘图时,我一直收到此错误。谁能告诉我为什么我似乎无法做散点图?我已粘贴下面的终端屏幕了。
tcmg2o4 <-read.table("~/Documents/research/metal.oxides/TcMg2O4.inverse/energydata.txt")
tcmg2o4
V1 V2
1 Lattice_constant Total_energy
2 8.0 -371.63306746
3 8.1 -375.035492
4 8.2 -378.8669067
5 8.3 -380.34136459
6 8.4 -382.3921237
7 8.5 -383.60394736
8 8.6 -384.09517631
9 8.7 -383.77668067
10 8.8 -382.43806866
11 8.9 -381.42213458
12 9.0 -379.63327976
attach(tcmg2o4)
plot(Lattice_constant, Total_energy)
Error in plot(Lattice_constant, Total_energy) :
object 'Lattice_constant' not found
plot(V1,V2)
答案 0 :(得分:6)
您的问题是您没有将列名称作为列名称读取。这样用
header = T
tcmg2o4 <-read.table("~/Documents/research/metal.oxides/TcMg2O4.inverse/energydata.txt", header = T)
在您的情况下,read.table
调用已创建列名V1
和V2
,这些列都是因子变量。
您可以通过
检查读入对象的结构str(tcmg2o4)
## 'data.frame': 11 obs. of 2 variables:
## $ Lattice_constant: num 8 8.1 8.2 8.3 8.4 8.5 8.6 8.7 8.8 8.9 ...
## $ Total_energy : num -372 -375 -379 -380 -382 ...
我也会避免使用attach
改为使用with
或
with(tcmg2o4, plot(Lattice_constant, Total_energy))
或它是2列data.frame
的事实plot(tcmg2o4)
或使用formula
指定x和y轴(y~x
)
plot(Total_energy ~ Lattice_constant, data = tcmg2o4)
这将产生相同的结果,并且更清楚地显示数据的存储位置