#r #ggplot2
#r #ggplot2
Вопрос:
Это первый раз, когда я опубликовал. Пожалуйста, извините меня, если на этот вопрос был дан ответ в другом месте или если он плохо объяснен.
> summary(pivoteddata)
country year value
Belgium :35 Length:175 Min. :54.50
France :35 Class :character 1st Qu.:80.30
Italy :35 Mode :character Median :86.10
Spain :35 Mean :82.37
United States:35 3rd Qu.:87.55
Afghanistan : 0 Max. :95.50
(Other) : 0 NA's :164
> dput(head(pivoteddata, 20))
structure(list(country = structure(c(10L, 10L, 10L, 10L, 10L,
10L, 10L, 10L, 10L, 10L, 10L, 10L, 10L, 10L, 10L, 10L, 10L, 10L,
10L, 10L), .Label = c("Afghanistan" - deleted countries - "Zimbabwe"),
class = "factor"), year = c("X1984", "X1985", "X1986",
"X1987", "X1988", "X1989", "X1990", "X1991", "X1992", "X1993",
"X1994", "X1995", "X1996", "X1997", "X1998", "X1999", "X2000",
"X2001", "X2002", "X2003"), value = c(NA, NA, NA, NA, NA, NA,
NA, NA, 90.8, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA)),
row.names = c(NA, -20L), class = c("tbl_df", "tbl", "data.frame"))
Это код для моего точечного графика: —
practiceplot <- ggplot(pivoteddata, aes(x=year, y=value, group=country,
color=country, size=10))
geom_line() geom_point()
…и как это выглядит: —
Ось X с использованием исходных значений
Я хочу изменить значения оси x, поэтому добавлено в код :-
ggplot(pivoteddata, aes(x=year, y=value, group=country,
color=country, size=10))
**scale_x_discrete(breaks = c(5, 10, 15, 20, 25, 30, 35),
labels = c("1985", "1990", "1995", "2000", "2005",
"2010", "2015"))**
Новые значения не отображаются на оси x. Что я делаю не так?
Спасибо
Комментарии:
1. Можете ли вы опубликовать образцы данных? Пожалуйста, отредактируйте вопрос с выводом
dput(pivoteddata)
. Или, если оно слишком велико с выводомdput(head(pivoteddata, 20))
.2. > сводка (сводные данные) значение года страны Бельгия : 35 Продолжительность: 175 мин. : 54,50 Франция : 35 Класс : символ 1-й Кв .: 80,30 Италия : 35 Режим : символ Медиана : 86,10 Испания : 35 Среднее значение : 82,37 США: 35 3-й Кв.: 87,55 Афганистан : 0 Макс. : 95,50(Другое): 0
3. Спасибо за краткое изложение, но этого недостаточно для построения данных. Пожалуйста, опубликуйте вывод
dput
команды, как указано в моем первом комментарии.4. > dput(head(pivoteddata, 2)) класс = «фактор»), год = c(«X1984», «X1985»), значение = c(NA_real_, NA структура (список (страна = структура(c(10L, 10L), .Label = c(«Афганистан», «Албания», «Алжир»…), row.names = c(NA, -2L), class = c(«tbl_df», «tbl», «data.frame»))
5. Почти готово! Это всего 2 значения, а не 20. И начало вывода отсутствует.
Ответ №1:
Не имея ваших данных, я бы сказал, что вы должны использовать scale_x_continuous()
вместо scale_x_discrete()
Ответ №2:
Вы должны опубликовать воспроизводимый пример, чтобы знать, что class(year)
это такое. Предполагая, что это a factor
, попробуйте следующее:
ggplot(pivoteddata, aes(x=year, y=value, group=country,
color=country, size=10))
scale_x_discrete(breaks = c("1985", "1990", "1995", "2000", "2005",
"2010", "2015"),
labels = c("1985", "1990", "1995", "2000", "2005",
"2010", "2015"))