Я хочу прочитать таблицу из моей базы данных Postgre (кодировка по умолчанию UTF8), и поскольку она на самом деле является таблицей PostGIS, я использую пакет st с st_read.
test_sf <- st_read(con, stringAsFactor = FALSE, layer = "test_df")
Выполнение команды возвращает сообщение "type is 146", где я не могу найти объяснение кода. Согласно ISO не существует геометрического типа кода 146, но это другая история.
Глядя на данные, прочитанные в test_sf, я вижу, что кодировка шрифтов работает неправильно. У меня есть строки с буквами, такими как 'ø' и c. Конкретное «ø» отображается в RStudio как «Ã¸». Пытаясь решить, что я искал кодировку определенного столбца в кадре данных:
Encoding(test_sf[["status"]])
, но результат показывает только unknown . Изменение кодировки Encoding(test_sf[["status"]]) <- "latin1"
показывает кодировку latin1 для всех строк со специальными символами, но все те, где нет специальных символов, остаются с кодировкой unknown . Хуже всего то, что View(test_sf)
по-прежнему показывает «Ã» вместо «ø».
Когда я смотрю на таблицу базы данных с DBeaver, кодировка шрифта правильная. Считывая данные в Python, кодировка шрифта правильная. Поскольку я хочу показать данные на графике в Shiny, я хочу использовать R.
Как я могу получить правильную кодировку шрифта моих данных?