plotly / plotly/plotly.R

Cannot modify xaxis and yxais labels for type="scatter3d"

Open
#2,284 3 comments 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

Dominant language
R
Stars
2.7k
Forks
641
PR merge metrics
No merged PRs in 30d

Description


Brief description of the problem:
I cannot modify the labels for the x-axis and y-axis. Copied from web page fig1 ; xaxis = list(title = 'XXXXXXXXXXXX') and yaxis = list(title = 'YYYYYYYYYYY') they render properly. When rendering as fig2: plot_ly(type="scatter3d",mode = "markers" ; the labels for x an y axis are incorrect. Both plots print in rstudio but fig2 's axis labels are incorrect. No errors are presented. Please see attacthed PDF with screen prints.

[plotly axis labels.pdf](https://github.com/plotly/plotly.R/files/12268079/plotly.axis.labels.pdf)

# insert reprex here
``` r
[plotly axis labels.pdf](https:/
[plotly axis labels.pdf](https://github.com/plotly/plotly.R/files/12268082/plotly.axis.labels.pdf)
/github.com/plotly/plotly.R/files/12268078/plotly.axis.labels.pdf)

#fig1
# clean out environemnt
rm(list = ls(all.names = TRUE))

library(plot3D)
library(plotly)
#> Loading required package: ggplot2
#> 
#> Attaching package: 'plotly'
#> The following object is masked from 'package:ggplot2':
#> 
#>     last_plot
#> The following object is masked from 'package:stats':
#> 
#>     filter
#> The following object is masked from 'package:graphics':
#> 
#>     layout
library(ggplot2)
library(stats)
library(stats4)
library(graphics)
library(crosstalk)
library(rgl)
library(plotrix)
#> 
#> Attaching package: 'plotrix'
#> The following object is masked from 'package:rgl':
#> 
#>     mtext3d
library(tidyr)
library(RColorBrewer)
library(dplyr)
#> 
#> Attaching package: 'dplyr'
#> The following objects are masked from 'package:stats':
#> 
#>     filter, lag
#> The following objects are masked from 'package:base':
#> 
#>     intersect, setdiff, setequal, union
library(readr)

##########################
# resolve library conflicts
conflicted::conflicts_prefer(plotly::filter)
#> [conflicted] Will prefer plotly::filter over any other package.
conflicted::conflicts_prefer(plotly::layout)
#> [conflicted] Will prefer plotly::layout over any other package.


fig1 <-  plot_ly(data = iris ,x =  ~Sepal.Length, y = ~Sepal.Width, color = ~Species, type = 'scatter', mode = 'markers')%>%
    layout(title = 'type = scatter, mode = markers', plot_bgcolor = "#e5ecf6", xaxis = list(title = 'XXXXXXXXXXXX'),
           yaxis = list(title = 'YYYYYYYYYYY'), legend = list(title=list(text='<b> Species of Iris </b>')))
fig1
#> PhantomJS not found. You can install it with webshot::install_phantomjs(). If it is installed, please make sure the phantomjs executable can be found via the PATH variable.

Created on 2023-08-05 with reprex v2.0.2



```r
# insert reprex here
``` r
#fig2
# clean out environemnt
rm(list = ls(all.names = TRUE))

library(plot3D)
library(plotly)
#> Loading required package: ggplot2
#> 
#> Attaching package: 'plotly'
#> The following object is masked from 'package:ggplot2':
#> 
#>     last_plot
#> The following object is masked from 'package:stats':
#> 
#>     filter
#> The following object is masked from 'package:graphics':
#> 
#>     layout
library(ggplot2)
library(stats)
library(stats4)
library(graphics)
library(crosstalk)
library(rgl)
library(plotrix)
#> 
#> Attaching package: 'plotrix'
#> The following object is masked from 'package:rgl':
#> 
#>     mtext3d
library(tidyr)
library(RColorBrewer)
library(dplyr)
#> 
#> Attaching package: 'dplyr'
#> The following objects are masked from 'package:stats':
#> 
#>     filter, lag
#> The following objects are masked from 'package:base':
#> 
#>     intersect, setdiff, setequal, union
library(readr)

##########################
# resolve library conflicts
conflicted::conflicts_prefer(plotly::filter)
#> [conflicted] Will prefer plotly::filter over any other package.
conflicted::conflicts_prefer(plotly::layout)
#> [conflicted] Will prefer plotly::layout over any other package.


fam17npg02 <- data.frame(x=c(77,77),y=c(61,77),z=c(77,79),p=c("np","np"),pcolor=c("BLACK","BLACK"))   


fig2 <- plot_ly(type="scatter3d",mode = "markers",
                fam17npg02, 
                x = fam17npg02$x, 
                y = fam17npg02$y,
                z = fam17npg02$z, 
                name="fam17npg02",    
                opacity = 0.8, color = I(fam17npg02$pcolor)) %>% 
    layout(title = 'type = scatter3d, mode = markers', plot_bgcolor = "#e5ecf6", xaxis = list(title = 'XXXXXXXXXXXX'),
           yaxis = list(title = 'YYYYYYYYYYY'), legend = list(title=list(text='<b> Species of Iris </b>')))

fig2
#> PhantomJS not found. You can install it with webshot::install_phantomjs(). If it is installed, please make sure the phantomjs executable can be found via the PATH variable.

Created on 2023-08-05 with reprex v2.0.2

Contributor guide

Open the contributing guide

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Research direction

Start by running the supplied fig1 and fig2 reprexes and compare how plot_ly(type="scatter3d") handles the layout xaxis and yaxis titles. Inspect the plotly.R entry points for scatter3d and layout axis handling; done means the requested x- and y-axis labels render correctly for the 3D plot without breaking the 2D example.

Written by the indexing model from the issue text.

Assessment

Tech stack
r
Domain
data-visualization
Issue type
Bug
Difficulty
3/5
Estimated time
1-2 days
Activity status
Stale
Clarity
Mostly clear
Newbie friendliness
35/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.