I wanted to improve the display of my values in my plotly graph. There is a problem when I mouse over the graph, it displays the information of the particular chart in a way that is not desirable.
This can be explained using an attached image of my chart.
As seen from the chart, it displays my information in the following format:
Type.of.Sale: Resale,
avg_price: 2166504,
Type.of.Sale: Resale
How can I make changes to its information display to be in this format for all three colored charts:
Type of Sale: Resale,
Avg Price: 2,166,504,
Type of Sale: Resale
I have reason to believe that the display that I have now is due to my default column names when I first load in the data, hence I want to reformat my original data column names from this "Type.of.Sale" to Type of Sale.
I have attached my code and where can I make changes to it.
#Load Libaries
library(ggplot2)
library(dplyr)
options(scipen = 100000)
library(scales)
library(stringr)
library(plotly)
library(tidyverse)
#Read dataset
ura <- read.csv('URAdata_new.csv')
#Data cleaning
ura <- ura %>% mutate(Date.of.Sale_month = str_split(ura$Date.of.Sale, '-', simplify = T)[, 1],
Date.of.Sale_year = str_split(ura$Date.of.Sale, '-', simplify = T)[, 2])
#Plotly Graph in issue
Plot1<-ggplotly(ura %>%
group_by(Type.of.Sale) %>%
summarize(avg_price = mean(Price....)) %>%
ggplot(aes(x = Type.of.Sale, y = avg_price, fill = Type.of.Sale)) +
geom_col() +
labs(x = 'Type of sale',
y = 'Average price',
title = 'Average price across different types of sales') +
scale_fill_discrete(name = "Type of sale",
labels = c("New Sale", "Resale", "Sub Sale"))+
theme(plot.title = element_text(colour="red",size=14, face="bold.italic",hjust = 0.5),
axis.title.x = element_text(colour="blue",size=14, face="bold"),
axis.title.y = element_text(colour="green",size=14, face="bold")) +
scale_y_continuous(name="Average Price",labels = scales::comma, limits = c(0, 2500000)))
Plot1
dput(head(ura,20))
structure(list(Project.Name = c("V ON SHENTON", "V ON SHENTON",
"STIRLING RESIDENCES", "PARC CLEMATIS", "STIRLING RESIDENCES",
"ONE PEARL BANK", "TWIN VEW", "WHISTLER GRAND", "WHISTLER GRAND",
"WHISTLER GRAND", "WHISTLER GRAND", "WHISTLER GRAND", "KENT RIDGE HILL RESIDENCES",
"KENT RIDGE HILL RESIDENCES", "KENT RIDGE HILL RESIDENCES", "KENT RIDGE HILL RESIDENCES",
"KENT RIDGE HILL RESIDENCES", "KENT RIDGE HILL RESIDENCES", "KENT RIDGE HILL RESIDENCES",
"STIRLING RESIDENCES"), Street.Name = c("SHENTON WAY", "SHENTON WAY",
"STIRLING ROAD", "JALAN LEMPENG", "STIRLING ROAD", "PEARL BANK",
"WEST COAST VALE", "WEST COAST VALE", "WEST COAST VALE", "WEST COAST VALE",
"WEST COAST VALE", "WEST COAST VALE", "SOUTH BUONA VISTA ROAD",
"SOUTH BUONA VISTA ROAD", "SOUTH BUONA VISTA ROAD", "SOUTH BUONA VISTA ROAD",
"SOUTH BUONA VISTA ROAD", "SOUTH BUONA VISTA ROAD", "SOUTH BUONA VISTA ROAD",
"STIRLING ROAD"), Type = c("Apartment", "Apartment", "Apartment",
"Apartment", "Apartment", "Apartment", "Apartment", "Apartment",
"Apartment", "Apartment", "Apartment", "Apartment", "Apartment",
"Apartment", "Apartment", "Apartment", "Apartment", "Apartment",
"Apartment", "Apartment"), Postal.District = c(1L, 1L, 3L, 5L,
3L, 3L, 5L, 5L, 5L, 5L, 5L, 5L, 5L, 5L, 5L, 5L, 5L, 5L, 5L, 3L
), Market.Segment = c("CCR", "CCR", "RCR", "OCR", "RCR", "RCR",
"OCR", "OCR", "OCR", "OCR", "OCR", "OCR", "RCR", "RCR", "RCR",
"RCR", "RCR", "RCR", "RCR", "RCR"), Tenure = c("99 yrs lease commencing from 2011",
"99 yrs lease commencing from 2011", "99 yrs lease commencing from 2017",
"99 yrs lease commencing from 2019", "99 yrs lease commencing from 2017",
"99 yrs lease commencing from 2019", "99 yrs lease commencing from 2017",
"99 yrs lease commencing from 2018", "99 yrs lease commencing from 2018",
"99 yrs lease commencing from 2018", "99 yrs lease commencing from 2018",
"99 yrs lease commencing from 2018", "99 yrs lease commencing from 2018",
"99 yrs lease commencing from 2018", "99 yrs lease commencing from 2018",
"99 yrs lease commencing from 2018", "99 yrs lease commencing from 2018",
"99 yrs lease commencing from 2018", "99 yrs lease commencing from 2018",
"99 yrs lease commencing from 2017"), Type.of.Sale = c("Resale",
"Resale", "New Sale", "New Sale", "New Sale", "New Sale", "New Sale",
"New Sale", "New Sale", "New Sale", "New Sale", "New Sale", "New Sale",
"New Sale", "New Sale", "New Sale", "New Sale", "New Sale", "New Sale",
"New Sale"), No..of.Units = c(1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L,
1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L), Price.... = c(3548000L,
3490000L, 1987000L, 1745000L, 1227000L, 1702000L, 1899000L, 704380L,
1129960L, 1145540L, 1473540L, 1421880L, 1367000L, 1360000L, 3000000L,
870000L, 1711000L, 899000L, 870000L, 1249000L), Nett.Price.... = c("-",
"-", "-", "-", "-", "-", "-", "-", "-", "-", "-", "-", "-", "-",
"-", "-", "-", "-", "-", "-"), Area..Sqft. = c(1518L, 1518L,
1055L, 1044L, 635L, 700L, 1249L, 441L, 764L, 764L, 990L, 958L,
775L, 786L, 1776L, 484L, 958L, 484L, 484L, 635L), Type.of.Area = c("Strata",
"Strata", "Strata", "Strata", "Strata", "Strata", "Strata", "Strata",
"Strata", "Strata", "Strata", "Strata", "Strata", "Strata", "Strata",
"Strata", "Strata", "Strata", "Strata", "Strata"), Floor.Level = c("46 to 50",
"46 to 50", "26 to 30", "06 to 10", "31 to 35", "21 to 25", "26 to 30",
"21 to 25", "21 to 25", "21 to 25", "31 to 35", "31 to 35", "01 to 05",
"01 to 05", "01 to 05", "01 to 05", "01 to 05", "01 to 05", "01 to 05",
"16 to 20"), Unit.Price...psf. = c(2338L, 2299L, 1884L, 1671L,
1932L, 2433L, 1521L, 1596L, 1479L, 1499L, 1488L, 1484L, 1764L,
1731L, 1689L, 1796L, 1786L, 1856L, 1796L, 1967L), Date.of.Sale = c("20-Jun",
"20-Jun", "20-Jun", "20-Jun", "20-Jun", "20-Jun", "20-Jun", "20-Jun",
"20-Jun", "20-Jun", "20-Jun", "20-Jun", "20-Jun", "20-Jun", "20-Jun",
"20-Jun", "20-Jun", "20-Jun", "20-Jun", "20-Jun")), row.names = c(NA,
20L), class = "data.frame")
Full Data Google Sheet link: https://docs.google.com/spreadsheets/d/1QFXNUpgEjjPGdfXUwvzYIadnoxcD2-Ba6cw6BqrxfO8/edit
question from:
https://stackoverflow.com/questions/65866436/making-my-plotly-graph-display-more-aesthetic