English 中文(简体)
R ggplot2-帮助复制列车图
原标题:R ggplot2 - Help Replicating Train Diagram

QUESTION

有人能帮我介绍一下解决这个问题的一般方法吗


我正在尝试复制这样的列车运行图(全尺寸)使用我自己的一些列车运行数据。

该图看起来由…组成。。。

  1. Horizontal Axis: Time
  2. Vertical Axis: Location
  3. Lines: Delineate the path of individual trains
  4. Colours: Not shown in the B&W image, but trains should be coloured separately

我的数据是这样的。。。

感谢您的帮助:)


样品可以这样复制。。。

dat <- structure(list(id = structure(c(1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 
1L, 1L, 1L, 1L, 1L, 1L, 2L, 2L, 2L, 2L, 2L, 2L, 2L, 2L, 2L, 2L, 
2L, 2L, 2L, 2L, 3L, 3L, 3L, 3L, 3L, 3L, 3L, 3L, 3L, 3L, 3L, 3L, 
3L, 3L, 4L, 4L, 4L, 4L, 4L, 4L, 4L, 4L, 4L, 4L, 4L, 4L, 4L, 4L, 
5L, 5L, 5L, 5L, 5L, 5L, 5L, 5L, 5L, 5L, 5L, 5L, 5L, 5L, 6L, 6L, 
6L, 6L, 6L, 6L, 6L, 6L, 6L, 6L, 6L, 6L, 6L, 6L, 7L, 7L, 7L, 7L, 
7L, 7L, 7L, 7L, 7L, 7L, 7L, 7L, 7L, 7L, 8L, 8L, 8L, 8L, 8L, 8L, 
8L, 8L, 8L, 8L, 8L, 8L, 8L, 8L, 9L, 9L, 9L, 9L, 9L, 9L, 9L, 9L, 
9L, 9L, 9L, 9L, 9L, 9L, 10L, 10L, 10L, 10L, 10L, 10L, 10L, 10L, 
10L, 10L, 10L, 10L, 10L, 10L), .Label = c("2011U0024", "2011U0025", 
"2011U0026", "2011U0035", "2011U0039", "2011U0040", "2011U0041", 
"2011U0046", "2011U0047", "2011U0049"), class = "factor"), location = structure(c(1L, 
2L, 3L, 4L, 5L, 6L, 7L, 8L, 9L, 10L, 11L, 12L, 13L, 14L, 1L, 
2L, 3L, 4L, 5L, 6L, 7L, 8L, 9L, 10L, 11L, 12L, 13L, 14L, 1L, 
2L, 3L, 4L, 5L, 6L, 7L, 8L, 9L, 10L, 11L, 12L, 13L, 14L, 1L, 
2L, 3L, 4L, 5L, 6L, 7L, 8L, 9L, 10L, 11L, 12L, 13L, 14L, 1L, 
2L, 3L, 4L, 5L, 6L, 7L, 8L, 9L, 10L, 11L, 12L, 13L, 14L, 1L, 
2L, 3L, 4L, 5L, 6L, 7L, 8L, 9L, 10L, 11L, 12L, 13L, 14L, 1L, 
2L, 3L, 4L, 5L, 6L, 7L, 8L, 9L, 10L, 11L, 12L, 13L, 14L, 1L, 
2L, 3L, 4L, 5L, 6L, 7L, 8L, 9L, 10L, 11L, 12L, 13L, 14L, 1L, 
2L, 3L, 4L, 5L, 6L, 7L, 8L, 9L, 10L, 11L, 12L, 13L, 14L, 1L, 
2L, 3L, 4L, 5L, 6L, 7L, 8L, 9L, 10L, 11L, 12L, 13L, 14L), .Label = c("a", 
"b", "c", "d", "e", "f", "g", "h", "i", "j", "k", "l", "m", "n"
), class = "factor"), time = structure(c(1294079880, 1294093080, 
1294094880, 1294100400, 1294102380, 1294124100, 1294125240, 1294126920, 
1294129020, 1294140120, 1294140900, 1294143960, 1294145100, 1294146600, 
1294086240, 1294100400, 1294105440, 1294111560, 1294114740, 1294137180, 
1294138380, 1294140120, 1294141320, 1294152420, 1294158000, 1294158900, 
1294160100, 1294162200, 1294100700, 1294113180, 1294115220, 1294120980, 
1294134780, 1294153920, 1294155060, 1294156680, 1294158480, 1294169460, 
1294170420, 1294171020, 1294171200, 1294173900, 1294290660, 1294307040, 
1294308720, 1294313880, 1294315860, 1294342200, 1294344600, 1294345080, 
1294347180, 1294358400, 1294360200, 1294360440, 1294360800, 1294364100, 
1294348860, 1294361400, 1294363500, 1294369560, 1294379160, 1294405080, 
1294407240, 1294407900, 1294409940, 1294421040, 1294421400, 1294421880, 
1294423200, 1294425240, 1294364100, 1294378200, 1294380180, 1294385700, 
1294388220, 1294414500, 1294416600, 1294421040, 1294422720, 1294434720, 
1294435500, 1294435920, 1294436400, 1294438920, 1294384440, 1294399440, 
1294401120, 1294406520, 1294408800, 1294429560, 1294431960, 1294434720, 
1294435980, 1294448160, 1294448340, 1294449360, 1294451400, 1294453500, 
1294468860, 1294502640, 1294504020, 1294509360, 1294514520, 1294537980, 
1294541400, 1294543920, 1294544640, 1294555860, 1294556520, 1294557120, 
1294558200, 1294564860, 1294501680, 1294513560, 1294515300, 1294521120, 
1294523820, 1294545960, 1294548780, 1294556820, 1294557420, 1294571580, 
1294572000, 1294572420, 1294575600, 1294579500, 1294549080, 1294562460, 
1294566300, 1294572180, 1294575420, 1294602180, 1294604520, 1294605300, 
1294606020, 1294617060, 1294620540, 1294620720, 1294624800, 1294630080
), class = c("POSIXct", "POSIXt"), tzone = "")), .Names = c("id", 
"location", "time"), row.names = c(NA, -140L), class = "data.frame")
最佳回答

它在<code>ggplot</code>中相当直接。一行代码就足够了:

ggplot(dat, aes(x=time, y=location, colour=id, group=id)) + geom_line()

问题回答

暂无回答




相关问题
How to plot fitted model over observed time series

This is a really really simple question to which I seem to be entirely unable to get a solution. I would like to do a scatter plot of an observed time series in R, and over this I want to plot the ...

REvolution for R

since the latest Ubuntu release (karmic koala), I noticed that the internal R package advertises on start-up the REvolution package. It seems to be a library collection for high-performance matrix ...

R - capturing elements of R output into text files

I am trying to run an analysis by invoking R through the command line as follows: R --no-save < SampleProgram.R > SampleProgram.opt For example, consider the simple R program below: mydata =...

R statistical package: wrapping GOFrame objects

I m trying to generate GOFrame objects to generate a gene ontology mapping in R for unsupported organisms (see http://www.bioconductor.org/packages/release/bioc/vignettes/GOstats/inst/doc/...

Changing the order of dodged bars in ggplot2 barplot

I have a dataframe df.all and I m plotting it in a bar plot with ggplot2 using the code below. I d like to make it so that the order of the dodged bars is flipped. That is, so that the bars labeled "...

Strange error when using sparse matrices and glmnet

I m getting a weird error when training a glmnet regression. invalid class "dgCMatrix" object: length(Dimnames[[2]]) must match Dim[2] It only happens occasionally, and perhaps only under larger ...

Generating non-duplicate combination pairs in R

Sorry for the non-descriptive title but I don t know whether there s a word for what I m trying to achieve. Let s assume that I have a list of names of different classes like c( 1 , 2 , 3 , 4 ) ...

Per panel smoothing in ggplot2

I m plotting a group of curves, using facet in ggplot2. I d like to have a smoother applied to plots where there are enough points to smooth, but not on plots with very few points. In particular I d ...

热门标签