【问题标题】:Creating Base plot from a data set从数据集创建基础图
【发布时间】:2017-10-07 00:30:43
【问题描述】:

我需要得到如下图的结果:

https://drive.google.com/file/d/0B4Mldbnr1-avMFgzS1Y4d2lqYUk/view?usp=sharing

我从以下链接获得了一个数据集:

https://drive.google.com/file/d/0B4Mldbnr1-avLUg1REJRRzFUZU0/view?usp=sharing

这是我到目前为止编写的代码,但似乎不正确:

source("load_data.R")

plot1 <- function(data=NULL) {
  if(is.null(data))
    data <- load_data()

library(datasets)
library(ggplot2)  
with(data, plot(Voltage,Global_active_power,type="n"))
with(subset(data, Voltage>=250), points(Voltage,Global_active_power, col="black"))
with(subset(data, Voltage!=249), points(Voltage,Global_active_power, col="red"))
title(main="Global Active Power(Kilowatts) for Voltage >=249")
legend("topright", pch = 1, col=c("black","red"), legend = c("Voltage>=249 & <250","Voltage>=250"))

}

我正在根据 GLobal_active_power 数据绘制电压数据,如图所示,仅电压 >= 249

请帮忙,我提前谢谢你

【问题讨论】:

    标签: r plot dataset


    【解决方案1】:

    假设dat是数据集,试试

    clr <- ifelse(dat[,"Voltage"]<250, "black", "red")
    plot(Global_active_power ~ Voltage, data=dat, col=clr, xlim=c(249,252))
    legend("topright", legend=c("<250", ">=250"), col=clr, pch=1)
    

    稍作改动以匹配预期结果:

    clr <- ifelse(data[,"Voltage"]<250, "black", "red")
    plot(Global_active_power ~ Voltage, data=data, col=clr, xlim=c(249,252))
    legend("topright", pch = 1, col=c("black","red"), legend = c("Voltage>=249 & <250","Voltage>=250"))
    title(main="Global Active Power(Kilowatts) for Voltage >=249")
    

    【讨论】:

    • 非常感谢,伙计。它真的对我有帮助。虽然我只是稍微更改了您的代码以匹配我的预期结果:
       clr =249 &amp; =250")) title(main="Global Active Power(Kilowatts) for Voltage &gt;=249") }
    • 非常感谢。真的很有帮助
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2020-07-17
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2019-08-15
    • 1970-01-01
    相关资源
    最近更新 更多