library(plotly)
## Carregando pacotes exigidos: ggplot2
##
## Anexando pacote: 'plotly'
## O seguinte objeto é mascarado por 'package:ggplot2':
##
## last_plot
## O seguinte objeto é mascarado por 'package:stats':
##
## filter
## O seguinte objeto é mascarado por 'package:graphics':
##
## layout
setwd("C:/R/3D")
Dados <- read.table("B1.txt", header = TRUE)
Dados
## Amostra X Y Z A B C Esfericidade
## 1 FQB1-30 68 143 -205 336.10 143.10 73.88 0.46
## 2 FQB1-31 124 22 -200 17.90 15.67 9.75 0.78
## 3 FQB1-33 134 48 -210 223.90 58.20 48.04 0.39
## 4 FQB1-34 97 101 -211 109.05 79.58 78.62 0.81
## 5 FQB1-37 136 125 -205 64.20 32.00 18.67 0.53
## 6 FQB1-35-1 94 125 -215 188.25 143.70 90.00 0.72
## 7 FQB1-35-2 88 121 -218 165.50 111.81 110.71 0.77
## 8 FQB1-35-3 92 120 -224 103.91 63.66 34.25 0.59
## 9 FQB1-29-1 93 103 -205 75.44 41.10 22.50 0.55
## 10 FQB1-29-2 95 98 -205 45.02 34.67 23.15 0.74
## 11 FQB1-29-3 100 98 -205 36.40 23.37 15.88 0.66
## 12 FQB1-29-4 102 106 -205 23.75 19.04 12.76 0.76
## 13 FQB1-29-5 103 100 -205 22.67 22.05 14.83 0.86
nome_coluna <- "Esfericidade"
Dados$Valores_Numéricos <- as.numeric(as.character(Dados[[nome_coluna]]))
plot3d <- plot_ly(
data = Dados,
x = ~X,
y = ~Y,
z = ~Z,
text = ~Amostra,
type = "scatter3d",
mode = "markers",
marker = list(
color = ~Esfericidade, # Define a variável contínua aqui dentro
colorscale = "Viridis", # O plotly interpreta corretamente aqui
size = 7,
opacity = 0.8,
colorbar = list(title = "Esfericidade")
),
hoverinfo = "text+x+y+z"
) %>%
layout(
title = "Posição espacial das amostras na quadra B1",
scene = list(
xaxis = list(title = "X"),
yaxis = list(title = "Y"),
zaxis = list(title = "Z")
),
hoverlabel = list(bgcolor = "white", font = list(size = 12))
)
# Exibir o gráfico
plot3d