作者rlearner (rlearner)
标题Re: [问题] plot出date-time资料整理
时间Wed Jan 11 15:44:15 2017
※ 引述《rlearner (rlearner)》之铭言:
: [目的]--------------------------------------------
: 在ubuntu 环境上取用Mysql资料
: 并使用shiny server 去plot呈现折线图
: (之所以会用plot是因为shiny server无法library(ggplot2))
: [问题]--------------------------------------------
: 我从mysql取得的资料
: 如下url:
: http://140.128.197.58:3838/sample-apps/rmysql2/
: 的下面的表格
: plot-xy图中
: x轴是time
: y轴是PM2.5
: 该资料有两个栏位都是时间
: 不知可否吧
: Date和time 合拼
: 或不用合拼,只要让x是照时间顺序plot出pm2.5就行
: [code]--------------------------------------------
: 以下是在server.R的code,用shiny 执行
: library(DBI)
: library(RMySQL)
: conn <- dbConnect(MySQL(), host="localhost", dbname="Airbox",
: username = "root", password = "[password]")
: #成功连上数据库
: ES = dbGetQuery(conn, "select * from data_school where site='ES'")
: plot(ES$time, ES$PM2.5, type="l")
: [错讯讯息]--------------------------------------------
: (chrom讯息)
: Error:An error has occurred. Check your logs or contact the app
: suthor for clarification.
: (按F12 Console)
: Wed Jan 04 2017 01:31:16 GMT+0800 (台北标准时间)
: [DBG]: 3 message(s) discarded from buffer
: 希望大神,有什麽方法可整理资料??
: @@
自己发现可以用paste先合拼,
再用strptime转成tmd格式
方法如下:
#step1:从资料库中读取
library(DBI)
library(RMySQL)
conn <- dbConnect(MySQL(), host="localhost", dbname="Airbox", username =
"root", password = "air123")
data = dbGetQuery(conn, "select * from data_school")
head(data)
资料格式如下:
Site Date Time PM2.5 PM10
1 ES 2016-03-26 13:59:00 13.940 20.094
2 ES 2016-03-26 14:04:00 13.833 19.061
3 ES 2016-03-26 14:09:00 15.548 19.548
4 ES 2016-03-27 14:14:00 17.410 20.199
5 ES 2016-03-27 14:19:00 19.566 21.706
6 ES 2016-03-27 14:24:00 19.909 20.104
------------------------------------------------------
#step2:用paste strptime合拼、转换成tm格式
date_time <- paste(data$Date,data$Time)
d_t <- strptime(date_time , "%Y-%m-%d %H:%M:%S")
#strptime中:%Y西元年,%m(数字)月份,%d日期,%H(24小时制)小时,%M分,$S秒
#另外"-"和":"以合拼资料格式为主
#step3:plot出来
plot(d_t , data$PM2.5,type='l')
跟大家分享
--
※ 发信站: 批踢踢实业坊(ptt.cc), 来自: 140.128.101.143
※ 文章网址: https://webptt.com/cn.aspx?n=bbs/R_Language/M.1484120657.A.C55.html
1F:推 Edster: 注意时区,可在strptime中加入tz="Asia/Taipei" 01/11 23:52
2F:→ Edster: 叫出单笔ISOdatetime, 可以看到时区,CST是中原标准时间 01/11 23:52
3F:→ Edster: 也是台北时间。 01/11 23:53
4F:→ rlearner: 唷唷!!感谢指教~~ 01/12 01:59