2013-10-23 27 views
0

我有一个关于'格子'图形等高线图的问题。我一直在尝试使用下面的代码创建一个contourplot,并且遇到了显示范围的问题。基本上,contourpplot函数使用我的响应(z)变量ABSerror的范围。'contourplot'的颜色图例(格子)超过显示值 - R

但是,由于预测变量(小时,星期几)对平均值进行了平均,因此绘制的数据不会达到这些“最小,最大”限制。是否可以计算格图的显示范围并将它们设置为颜色图例的新限制?我不想为z向量设置绝对限制,因为这会使代码不够健壮,并且每次运行时都需要更改。

contourplot(ABSerror ~ hour * weekday, 
     data = SummaryData, 
     cuts = 20, 
     labels=TRUE, 
     contour=FALSE, 
     region = TRUE, 
     xlab = "Hour of Day", 
     ylab = "Day of Week", 
     col.regions=colorRampPalette(c("blue","yellow","red")), 
     main = "ABS error") 

如果有必要,我可以尝试在网上提供数据,以更好地解释我想要达到的目标。

编辑:更多信息

我现在我的代码可在网上浏览:http://danielcoakley.com/projects/energy-simulation/

我使用的可以在这里找到的数据集:SummaryData

这里是图我好了。如您所见,数据未达到图例中显示的范围。我仍然不确定如何解决这个问题。

ABSerror http://danielcoakley.com/project/Model/Current%20Model/Results/ABSerror.png

回答

1

所有晶格函数使用prepanel.XXX来确定极限;对于contourplot,这是prepanel.default.levelplot。只需输入这个字符串,你会看到默认的实现。如果您不满意,请定义一个新函数来更改代码,并将其作为prepanel=prepanel.my.levelplot与contourplot一起传递。

如果您想要一个正在运行的代码示例,请不要忘记通过提供示例数据来让您的示例自成一体。

+0

感谢您的意见。我运行了你指定的命令'prepanel.default.levelplot',但没有看到改变z限制的能力。我刚刚在线提供了所有代码,以便更轻松地完成更改和回答查询(请参阅上文) –