Ваш график не соответствует образцу данных, который вы показываете, поэтому трудно быть уверенным, что структура ваших реальных данных на самом деле такая же.
Используя случайный пример, я получаю следующий график:
df <- data.frame(A = sample(1:3,20, replace = TRUE))
library(ggplot2)
ggplot(df, aes(x="A", y=A, fill=as.factor(A)))+
geom_bar(width = 1, stat = "identity") +
scale_fill_discrete(labels = c("x","y","z"))
РЕДАКТИРОВАТЬ: Используя данные, предоставленные OP
Здесь, используя ваш данные, вы должны получить следующий график:
ggplot(df, aes(x = "A",y = A, fill = as.factor(A)))+
geom_col()
Или, если вы хотите подсчет каждого отдельного значения A, вы можете сделать:
library(dplyr)
library(ggplot2)
df %>% group_by(A) %>% count() %>%
ggplot(aes(x = "A", y = n, fill = as.factor(A)))+
geom_col()
Это то, что вы ищете?