Colonel Beauvel - 2 years ago 127
R Question

After coming back to ggplot2 for some evolve scatterplot, I feel like I am lost:
I have two datasets,

`df1`
and
`df2`
(this last being a single point).

``````>df1
DATE        XOV        DAX
1  16479  2.1880142 -1.8203765
2  16482  2.7930760 -2.1501989
3  16483  2.8998516 -1.9903619
4  16484  1.8676874 -1.8704841
5  16485  1.5473606 -1.8007140
6  16486  1.3338094 -1.4620117
7  16489  0.7643395 -1.4512291
8  16490  0.4084208 -1.2044965
9  16491  0.2660533 -1.2577755
10 16492 -0.5169678 -0.9438099

>df2
DATE      XOV       DAX
1 13514 1.620395 -1.927569
``````

What I wanna obtain (1) is a scatterplot with
`df1`
, with point colored depending on the date, according to a gradient, and (2) add the single point in red on it with a bigger size.

I can obtain (1) with:

``````library(ggplot2)

ggplot() +
geom_point(data=df1, aes(x=DAX, y=XOV, colour=DATE)) +
theme(legend.position="none") +
``````

Giving:

When I wanna add (2), I use:

``````library(ggplot2)

ggplot() +
geom_point(data=df1, aes(x=DAX, y=XOV, colour=DATE)) +
geom_point(data=df2, aes(x=DAX, y=XOV, color="red"))
``````

But then get the error:

``````\$ Discrete value supplied to continuous scale
``````

I apologize if it's a duplicate, already looked for solutions but I did not get what was wrong, despite pulling each dataframe out of
`ggplot()`
...

You should specify the colour argument outside of the aes:

``````ggplot() +
geom_point(data=df1, aes(x=DAX, y=XOV, colour=DATE)) +
theme(legend.position="none") +