I am trying to plot multiple lines with molten data and I am using the library(bdscale) to correct the x scale for business days, however the x scales are not being placed correctly. I wonder if anyone out there have already faced the same issue and could help me out. Thanks!
I have already checked these two previous answers the question was with faceting and transform the date into factors, however unfortunately neither of them seem to be the solution I would like.
I have included a sample of my data.
dput(pred_final_price_melt)
structure(list(date_hist = structure(c(18017, 18018, 18019, 18022,
18023, 18024, 18025, 18026, 18029, 18030, 18031, 18032, 18033,
18036, 18037, 18038, 18039, 18040, 18017, 18018, 18019, 18022,
18023, 18024, 18025, 18026, 18029, 18030, 18031, 18032, 18033,
18036, 18037, 18038, 18039, 18040, 18017, 18018, 18019, 18022,
18023, 18024, 18025, 18026, 18029, 18030, 18031, 18032, 18033,
18036, 18037, 18038, 18039, 18040, 18017, 18018, 18019, 18022,
18023, 18024, 18025, 18026, 18029, 18030, 18031, 18032, 18033,
18036, 18037, 18038, 18039, 18040, 18017, 18018, 18019, 18022,
18023, 18024, 18025, 18026, 18029, 18030, 18031, 18032, 18033,
18036, 18037, 18038, 18039, 18040, 18017, 18018, 18019, 18022,
18023, 18024, 18025, 18026, 18029, 18030, 18031, 18032, 18033,
18036, 18037, 18038, 18039, 18040), class = "Date"), variable = c("Model_1",
"Model_1", "Model_1", "Model_1", "Model_1", "Model_1", "Model_1",
"Model_1", "Model_1", "Model_1", "Model_1", "Model_1", "Model_1",
"Model_1", "Model_1", "Model_1", "Model_1", "Model_1", "Model_2",
"Model_2", "Model_2", "Model_2", "Model_2", "Model_2", "Model_2",
"Model_2", "Model_2", "Model_2", "Model_2", "Model_2", "Model_2",
"Model_2", "Model_2", "Model_2", "Model_2", "Model_2", "Model_3",
"Model_3", "Model_3", "Model_3", "Model_3", "Model_3", "Model_3",
"Model_3", "Model_3", "Model_3", "Model_3", "Model_3", "Model_3",
"Model_3", "Model_3", "Model_3", "Model_3", "Model_3", "Model_4",
"Model_4", "Model_4", "Model_4", "Model_4", "Model_4", "Model_4",
"Model_4", "Model_4", "Model_4", "Model_4", "Model_4", "Model_4",
"Model_4", "Model_4", "Model_4", "Model_4", "Model_4", "BH",
"BH", "BH", "BH", "BH", "BH", "BH", "BH", "BH", "BH", "BH", "BH",
"BH", "BH", "BH", "BH", "BH", "BH", "BH_Intra", "BH_Intra", "BH_Intra",
"BH_Intra", "BH_Intra", "BH_Intra", "BH_Intra", "BH_Intra", "BH_Intra",
"BH_Intra", "BH_Intra", "BH_Intra", "BH_Intra", "BH_Intra", "BH_Intra",
"BH_Intra", "BH_Intra", "BH_Intra"), value = c(0.000884284992420437,
-0.00353937555302741, -0.000760649087221177, 0.000505816894284195,
0.00063035804336864, 0.0013869625520111, -0.00202045712842525,
-0.000629722921914322, 0.00264417023419794, -0.000627982918864567,
0.00226102248461246, 0.00213032581453632, 0.000250972518509252,
-0.00175702811244982, -0.00113150616042246, 0.00239144115796108,
0.00564759036144569, -0.000375187593796844, -0.000884284992420437,
-0.00353937555302741, 0.000760649087221177, 0.000505816894284195,
-0.00063035804336864, 0.0013869625520111, -0.00202045712842525,
0.000629722921914322, -0.00264417023419794, 0.000627982918864567,
-0.00226102248461246, -0.00213032581453632, 0.000250972518509252,
0.00175702811244982, 0.00113150616042246, 0.00239144115796108,
0.00564759036144569, -0.000375187593796844, -0.000884284992420437,
-0.00353937555302741, 0.000760649087221177, 0.000505816894284195,
-0.00063035804336864, 0.0013869625520111, -0.00202045712842525,
-0.000629722921914322, -0.00264417023419794, -0.000627982918864567,
0.00226102248461246, -0.00213032581453632, 0.000250972518509252,
0.00175702811244982, -0.00113150616042246, -0.00239144115796108,
-0.00564759036144569, 0.000375187593796844, 0.000884284992420437,
-0.00353937555302741, 0.000760649087221177, 0.000505816894284195,
0.00063035804336864, -0.0013869625520111, 0.00202045712842525,
0.000629722921914322, -0.00264417023419794, 0.000627982918864567,
-0.00226102248461246, 0.00213032581453632, 0.000250972518509252,
0.00175702811244982, 0.00113150616042246, 0.00239144115796108,
-0.00564759036144569, 0.000375187593796844, -0.000758054327226754,
-0.00328739410797829, 0.00139540783965497, 0.00228021281986313,
0.003159757330637, -0.00214186720423337, 0.00189393939393945,
0, 0.00352867044738492, -0.000753484867512255, 0.002764861128566,
-0.00200526381752097, 0.000502323245008096, -0.00163173088992097,
-0.00113150616042246, 0.00239144115796108, 0.00615268709191352,
-0.00249594409085241, -0.000884284992420437, -0.00353937555302741,
0.000760649087221177, 0.000505816894284195, 0.00063035804336864,
-0.0013869625520111, 0.00202045712842525, -0.000629722921914322,
0.00264417023419794, -0.000627982918864567, 0.00226102248461246,
-0.00213032581453632, -0.000250972518509252, -0.00175702811244982,
-0.00113150616042246, 0.00239144115796108, 0.00564759036144569,
-0.000375187593796844), ret_accum = c(0.993020566092887, 0.989505893377605,
0.988753226623007, 0.989253354709311, 0.989876938518382, 0.991249860763206,
0.989247082915976, 0.988624131352427, 0.991238221853359, 0.99061574118151,
0.992855545645932, 0.994970651444927, 0.995220361735163, 0.993471731581512,
0.992347612197022, 0.994720753119834, 1.00033852845748, 0.999963213852009,
0.993817657624321, 0.990300163702759, 0.991053434618354, 0.991554726188723,
0.990929691691629, 0.992304074065681, 0.99029916622567, 0.990922780310195,
0.98830261179011, 0.988923248948984, 0.986687271247554, 0.984585305882741,
0.984832409736645, 0.986562787966604, 0.987679089838832, 0.99004106626513,
0.995632412648405, 0.995258863719197, 1.00633565703449, 1.00277385721184,
1.00353661623102, 1.00404422200554, 1.0034113146543, 1.00480300857199,
1.00277284717066, 1.00214137812332, 0.999491545720829, 0.998863882102567,
1.00112233579907, 0.998989619043607, 0.999240337984263, 1.00099603134919,
0.999863398173165, 0.997472283690435, 0.991838968835255, 0.992211094511407,
1.02637315186551, 1.02274043182351, 1.02351837839944, 1.02403609128685,
1.02468160067369, 1.02326040566582, 1.02532785944668, 1.02597353190225,
1.02326068322812, 1.02390327345873, 1.02158820513538, 1.0237645208606,
1.02402145762076, 1.02582069210955, 1.02698141454216, 1.02943738016536,
1.02362353953943, 1.02400759039218, 1.04741093894848, 1.04396768639915,
1.0454244470931, 1.04780823731956, 1.05111905707853, 1.04886769964243,
1.05085419149781, 1.05085419149781, 1.05456230962786, 1.05376771288571,
1.05668123427361, 1.05456230962786, 1.0550920407893, 1.05337041451463,
1.0521785194014, 1.05469474241822, 1.06118394914581, 1.05853529333863,
1.0447374250804, 1.04103970697874, 1.04183157288161, 1.04235854889217,
1.04301560798754, 1.0415689843981, 1.04367342987737, 1.04301620479559,
1.04577411719809, 1.0451173889155, 1.0474804228309, 1.04524894824592,
1.04498661948491, 1.04315054861734, 1.04197021734533, 1.04446202780846,
1.05036072148961, 1.0499666391779), Month = c(5, 5, 5, 5, 5,
5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5,
5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5,
5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5,
5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5,
5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5)), class = c("data.table",
"data.frame"), row.names = c(NA, -108L), .internal.selfref = <pointer: 0x0000000007a41ef0>)
My code:
library(ggplot2)
library(bdscale)
ggplot(pred_final_price_melt,aes(date_hist,ret_accum,colour=variable,shape=variable))+
geom_line()+
geom_point() +
xlab("Date") +
ylab("Accumulated return") +
scale_x_bd(business.dates = pred_final_price_melt$date_hist,
max.major.breaks = 10,
labels = date_format("%y-%m-%d"))