I am creating a circlepack graph using ggraph and want to be able to apply the fill aesthetic to my "from" column in my edges list. The problem I am running into is that after using graph_from_data_frame
to merge the two dataframes into a list the column names no longer exist to use for aesthetics it seems.
This is the code I am using, the column name I want to use for fill is body_type.
outlier_graphtree_full <- graph_from_data_frame(circleplot_treeedge_full, vertices=circle_vertices_tree_full)
ggraph(outlier_graphtree_full, layout = 'circlepack', weight=count_vehicl_n_full_t) +
geom_node_circle(aes(fill = body_type, color = as.factor(depth))) +
scale_color_manual(values=c("0" = "white", "1" = "black", "2" = "black", "3" = "black", "4"="black") ) +
geom_node_label(aes(label=new_label), size=3.5, repel = TRUE, nudge_y = -2) +
theme_void() +
theme(plot.margin = unit(rep(0,4), "cm"))+
guides(color = FALSE)
Here are the outputs requested by Phil:
dput(circleplot_treeedge_full)
structure(list(body_type_full_t = c("rot", "rot", "rot", "rot",
"rot", "rot", "rot", "rot", "SUV", "Sedan", "Coupe", "Sedan",
"Hatchback", "SUV", "Coupe", "Sedan", "Sedan", "SUV", "SUV",
"Coupe", "SUV", "Sedan", "SUV", "Sedan", "SUV", "Sedan", "Sedan",
"Sedan", "Sedan", "SUV", "Sedan", "Hatchback", "Sedan", "SUV",
"SUV", "Sedan", "SUV", "Hatchback", "Sedan", "SUV", "Sedan",
"SUV", "Pickup Truck", "SUV", "SUV", "Station Wagon", "Sedan",
"SUV", "Van", "SUV", "Coupe", "Pickup Truck", "SUV", "SUV",
"SUV", "SUV", "SUV", "Sedan", "SUV", "Van", "SUV", "SUV", "SUV",
"SUV", "SUV", "SUV", "Hatchback", "Sedan", "Minivan", "SUV",
"SUV", "SUV", "SUV", "SUV", "Hatchback", "SUV", "SUV", "Van",
"Sedan", "SUV", "Sedan", "Hatchback", "SUV", "Sedan", "SUV",
"Hatchback", "SUV", "SUV", "Hatchback", "SUV", "Sedan", "Hatchback",
"SUV", "SUV", "SUV", "SUV", "Pickup Truck", "SUV", "Sedan",
"Sedan", "Hatchback", "SUV", "Sedan", "SUV", "SUV", "Pickup Truck",
"Hatchback", "Hatchback", "Hatchback", "Sedan", "Hatchback",
"Hatchback", "Hatchback", "Hatchback", "Sedan", "Hatchback",
"SUV", "Hatchback", "Hatchback", "SUV", "Hatchback", "Hatchback",
"Hatchback", "Hatchback", "Hatchback", "Hatchback", "Hatchback"
), model_full_t = c("SUV", "Sedan", "Coupe", "Hatchback", "Pickup Truck",
"Station Wagon", "Van", "Minivan", "NX", "A3", "918", "FLYING SPUR",
"PANAMERA", "BENTAYGA", "I8", "RS E-TRON GT", "S-CLASS", "RANGE ROVER SPORT",
"RANGE ROVER", "ROADSTER", "E-TRON GT", "EQS-CLASS SEDAN", "EQS-CLASS SUV",
"KARMA", "MODEL X", "A8 E", "745LE", "745E", "740E", "E-TRON SPORTBACK",
"TAYCAN", "MODEL S", "AIR", "CAYENNE", "IX", "G80", "R1S", "A7",
"CT6", "EQB-CLASS", "EQE-CLASS SEDAN", "E-TRON", "R1T", "I-PACE",
"XC90", "V60", "S90", "AVIATOR", "EDV", "GLE-CLASS", "ELR", "F-150",
"GRAND CHEROKEE", "GV60", "LYRIQ", "RZ 450E", "XC60", "530E",
"Q5 E", "TRANSIT CONNECT ELECTRIC", "C40", "WRANGLER", "CORSAIR",
"XC40", "GLC-CLASS", "X3", "I4", "S60", "PACIFICA", "RAV4 PRIME",
"Q4", "IONIQ 5", "EV6", "X5", "PS2", "MODEL Y", "MUSTANG MACH-E",
"TRANSIT", "330E", "SOLTERRA", "C-CLASS", "I3", "ARIYA", "IONIQ 6",
"SANTA FE", "B-CLASS", "RAV4", "BZ4X", "CITY", "ESCAPE", "MODEL 3",
"COUNTRYMAN", "OUTLANDER", "NIRO", "ID.4", "TUCSON", "RANGER",
"SORENTO", "OPTIMA", "FUSION", "SOUL EV", "CROSSTREK", "CLARITY",
"KONA ELECTRIC", "KONA", "S-10 PICKUP", "WHEEGO", "PRIUS PRIME",
"E-GOLF", "ACCORD", "HARDTOP", "PRIUS PLUG-IN", "FOCUS", "FORTWO ELECTRIC DRIVE",
"SONATA", "LEAF", "BOLT EUV", "VOLT", "BOLT EV", "SPORTAGE",
"IONIQ", "C-MAX", "I-MIEV", "EQ FORTWO", "500", "FORTWO", "SPARK"
), count_vehicl_n_full_t = c(0, 0, 0, 0, 0, 0, 0, 0, 54, 575,
1, 1, 122, 2, 93, 23, 11, 25, 16, 49, 89, 136, 111, 14, 4792,
3, 2, 9, 26, 170, 472, 7399, 133, 341, 294, 6, 266, 11, 16, 82,
22, 884, 1125, 222, 1139, 15, 27, 134, 221, 49, 70, 490, 299,
48, 17, 10, 858, 376, 697, 7, 246, 2029, 74, 717, 192, 286, 436,
111, 2139, 1274, 170, 1111, 1348, 1887, 648, 22078, 2140, 199,
397, 167, 19, 1890, 62, 6, 77, 89, 59, 42, 3, 280, 25311, 199,
646, 2525, 2397, 45, 14, 445, 105, 1834, 657, 64, 782, 432, 194,
1, 3, 2456, 1035, 9, 529, 939, 250, 152, 76, 12961, 792, 4876,
5335, 172, 203, 1536, 64, 56, 803, 68, 247)), class = "data.frame", row.names = c(NA,
-127L))
dput(circle_vertices_tree_full)
structure(list(model_full_t = c("SUV", "Sedan", "Coupe", "Hatchback",
"Pickup Truck", "Station Wagon", "Van", "Minivan", "NX", "A3",
"918", "FLYING SPUR", "PANAMERA", "BENTAYGA", "I8", "RS E-TRON GT",
"S-CLASS", "RANGE ROVER SPORT", "RANGE ROVER", "ROADSTER", "E-TRON GT",
"EQS-CLASS SEDAN", "EQS-CLASS SUV", "KARMA", "MODEL X", "A8 E",
"745LE", "745E", "740E", "E-TRON SPORTBACK", "TAYCAN", "MODEL S",
"AIR", "CAYENNE", "IX", "G80", "R1S", "A7", "CT6", "EQB-CLASS",
"EQE-CLASS SEDAN", "E-TRON", "R1T", "I-PACE", "XC90", "V60",
"S90", "AVIATOR", "EDV", "GLE-CLASS", "ELR", "F-150", "GRAND CHEROKEE",
"GV60", "LYRIQ", "RZ 450E", "XC60", "530E", "Q5 E", "TRANSIT CONNECT ELECTRIC",
"C40", "WRANGLER", "CORSAIR", "XC40", "GLC-CLASS", "X3", "I4",
"S60", "PACIFICA", "RAV4 PRIME", "Q4", "IONIQ 5", "EV6", "X5",
"PS2", "MODEL Y", "MUSTANG MACH-E", "TRANSIT", "330E", "SOLTERRA",
"C-CLASS", "I3", "ARIYA", "IONIQ 6", "SANTA FE", "B-CLASS", "RAV4",
"BZ4X", "CITY", "ESCAPE", "MODEL 3", "COUNTRYMAN", "OUTLANDER",
"NIRO", "ID.4", "TUCSON", "RANGER", "SORENTO", "OPTIMA", "FUSION",
"SOUL EV", "CROSSTREK", "CLARITY", "KONA ELECTRIC", "KONA", "S-10 PICKUP",
"WHEEGO", "PRIUS PRIME", "E-GOLF", "ACCORD", "HARDTOP", "PRIUS PLUG-IN",
"FOCUS", "FORTWO ELECTRIC DRIVE", "SONATA", "LEAF", "BOLT EUV",
"VOLT", "BOLT EV", "SPORTAGE", "IONIQ", "C-MAX", "I-MIEV", "EQ FORTWO",
"500", "FORTWO", "SPARK", "rot"), count_vehicl_n_full_t = c(0,
0, 0, 0, 0, 0, 0, 0, 54, 575, 1, 1, 122, 2, 93, 23, 11, 25, 16,
49, 89, 136, 111, 14, 4792, 3, 2, 9, 26, 170, 472, 7399, 133,
341, 294, 6, 266, 11, 16, 82, 22, 884, 1125, 222, 1139, 15, 27,
134, 221, 49, 70, 490, 299, 48, 17, 10, 858, 376, 697, 7, 246,
2029, 74, 717, 192, 286, 436, 111, 2139, 1274, 170, 1111, 1348,
1887, 648, 22078, 2140, 199, 397, 167, 19, 1890, 62, 6, 77, 89,
59, 42, 3, 280, 25311, 199, 646, 2525, 2397, 45, 14, 445, 105,
1834, 657, 64, 782, 432, 194, 1, 3, 2456, 1035, 9, 529, 939,
250, 152, 76, 12961, 792, 4876, 5335, 172, 203, 1536, 64, 56,
803, 68, 247, 0), level = c(2, 2, 2, 2, 2, 2, 2, 2, 3, 3, 3,
3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3,
3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3,
3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3,
3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3,
3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3,
3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 1), new_label = c("SUV", "Sedan",
"Coupe", "Hatchback", "Pickup Truck", "Station Wagon", "Van",
"Minivan", NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA,
NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA,
NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA,
NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA,
NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA,
NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA,
NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA,
NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA)), row.names = c(NA,
-128L), class = "data.frame")