[R] ggplot y-axis labels are not continuous
Mohan Radhakrishnan
radhakrishnan.mohan at gmail.com
Mon Sep 15 06:44:07 CEST 2014
options("scipen"=100, "digits"=4)
df.melted$value<-as.integer(df.melted$value)
I was not looking at the return type of 'format'. But these alternative
work well.
Thanks,
Mohan
On Sun, Sep 14, 2014 at 9:57 PM, David Winsemius <dwinsemius at comcast.net>
wrote:
>
> On Sep 14, 2014, at 1:15 AM, Mohan Radhakrishnan wrote:
>
> Thanks Dennis.
>>
>> df.melted$value<-as.numeric(df.melted$value)
>>
>
> See the FAQ about converting factors to numeric.
>
> The more typical way of making that conversion is:
>
> df.melted$value<-as.numeric(as.character(df.melted$value))
>
> ... although the FAQ points out that this is more efficient:
>
> df.melted$value<-levels(df.melted$value)[ df.melted$value]
>
>
> df.melted$value <- format(df.melted$value, scientific = FALSE)
>>
>
> So you started out with a factor and then you converted back to a
> character with `format`? Was that what was really desired? You probably
> want to leave it as numeric and then you plotting routines will "know" what
> type of axis to create for the data features. If you are in the ggplot
> world view then there will be functions like scale_x_continuous that
> appears to offer a 'labels' parameter. Reading the help page for
> scale_continuous it seems that you might want to try formating the result
> of the `waiver()` function, but the somewhat older version of the package I
> have on this aging laptop does not have any worked examples.
>
>
>
>
>>
>> Mohan
>>
>> On Sun, Sep 14, 2014 at 9:22 AM, Dennis Murphy <djmuser at gmail.com> wrote:
>>
>> Hi:
>>>
>>> Try
>>>
>>> str(df.melted)
>>>
>>> I'm guessing value is a factor. It needs to be numeric or integer.
>>>
>>> Dennis
>>>
>>>
>>> On Sat, Sep 13, 2014 at 12:53 PM, Mohan Radhakrishnan
>>> <radhakrishnan.mohan at gmail.com> wrote:
>>>
>>>> Hi,
>>>>
>>>> This is the code to create a ggplot. The plot is rendered but the y-axis
>>>> labels are not continuous. So the lines are split.
>>>>
>>>> Moreover multiple y-axis labels overwrite each other due to this. How
>>>>
>>> can I
>>>
>>>> fix this?
>>>>
>>>> If I try to set ylim I get "
>>>>
>>>> *Discrete value supplied to continuous scale"*
>>>>
>>>> library(RJSONIO)
>>>> library(ggplot2)
>>>> this.dir <- dirname(parent.frame(2)$ofile)
>>>> setwd(this.dir)
>>>>
>>>> airlines = fromJSON("json")
>>>> df <- sapply(airlines$data,unlist)
>>>> df <- data.frame(t(df))
>>>> colnames(df) <- c( (airlines[[1]][[1]])[[2]],
>>>> gsub("[^A-Z]","",(airlines[[1]][[2]])[[2]]),
>>>> gsub("[^A-Z]","",(airlines[[1]][[3]])[[2]] ),
>>>> gsub("[^A-Z]","",(airlines[[1]][[4]])[[2]]), (airlines[[1]][[5]])[[2]],
>>>> (airlines[[1]][[6]])[[2]], (airlines[[1]][[7]])[[2]],
>>>> (airlines[[1]][[8]])[[2]],
>>>> (airlines[[1]][[9]])[[2]],(airlines[[1]][[10]])[[2]] )
>>>>
>>>> df.melted <- melt(df, id = "YEAR")
>>>> print(ggplot(data = df.melted, aes(x = YEAR, y = value, color =
>>>>
>>> variable))
>>>
>>>> +geom_point() + theme(axis.text.x = element_text(angle = 90, hjust = 1))
>>>>
>>> +
>>>
>>>> ylab(""))
>>>> dev.off()
>>>>
>>>>
>>>> head(df)
>>>>>
>>>>
>>>> YEAR INTERNATIONALACMINNOS DOMESTICACMINNOS TOTALACMINNOS
>>>>
>>>> 1 1995-96 92515 314727 407242
>>>>
>>>> 2 1996-97 94884 324462 419346
>>>>
>>>> 3 1997-98 98226 317531 415757
>>>>
>>>> 4 1998-99 99563 325392 424955
>>>>
>>>> 5 1999-00 99701 368015 467716
>>>>
>>>> 6 2000-01 103211 386575 489786
>>>>
>>>> INTERNATIONAL PAX (IN NOS) DOMESTIC PAX (IN NOS) TOTAL PAX (IN NOS)
>>>>
>>>> 1 11449756 25563998 37013754
>>>>
>>>> 2 12223660 24276108 36499768
>>>>
>>>> 3 12782769 23848833 36631602
>>>>
>>>> 4 12916788 24072631 36989419
>>>>
>>>> 5 13293027 25741521 39034548
>>>>
>>>> 6 14009052 28017568 42026620
>>>>
>>>> INTERNATIONAL FREIGHT (IN MT) DOMESTIC FREIGHT (IN MT) TOTAL FREIGHT
>>>>
>>> (IN
>>>
>>>> MT)
>>>>
>>>> 1 452853 196516
>>>> 649369
>>>>
>>>> 2 479088 202122
>>>> 681210
>>>>
>>>> 3 488175 217405
>>>> 705580
>>>>
>>>> 4 474660 224490
>>>> 699150
>>>>
>>>> 5 531844 265570
>>>> 797414
>>>>
>>>> 6 557772 288373
>>>> 846145
>>>>
>>>>
>>>> Thanks,
>>>>
>>>> Mohan
>>>>
>>>> [[alternative HTML version deleted]]
>>>>
>>>> ______________________________________________
>>>> R-help at r-project.org mailing list
>>>> https://stat.ethz.ch/mailman/listinfo/r-help
>>>> PLEASE do read the posting guide
>>>>
>>> http://www.R-project.org/posting-guide.html
>>>
>>>> and provide commented, minimal, self-contained, reproducible code.
>>>>
>>>
>>>
>> [[alternative HTML version deleted]]
>>
>> ______________________________________________
>> R-help at r-project.org mailing list
>> https://stat.ethz.ch/mailman/listinfo/r-help
>> PLEASE do read the posting guide http://www.R-project.org/
>> posting-guide.html
>> and provide commented, minimal, self-contained, reproducible code.
>>
>
> David Winsemius, MD
> Alameda, CA, USA
>
>
[[alternative HTML version deleted]]
More information about the R-help
mailing list