R语言 如何使用plotly软件包绘制3D集群图
R语言被广泛用于数据科学、数据可视化、数据分析等领域。Plotly包在绘制各种图表方面非常丰富,这些图形/图表具有高度的互动性和用户友好性。
三维集群将变量之间的相似性可视化为三维空间关系。图中的每个点都代表一个单独的属性。距离较近的点更多地被分到同一类别或类中。
使用实例:
使用R编程语言中的plotly库在3-D plot中绘制以下数据集。
x | y | z |
---|---|---|
1 | 10 | 2 |
2 | 20 | 4 |
3 | 30 | 8 |
4 | 40 | 16 |
5 | 50 | 32 |
语法
plot_ly(data_object, x, y, z)
其中
- data_object: 代表数据集或数据框架对象。
- x : 代表x-数据向量。
- y : 代表y-数据向量。
- z : 代表z数据向量。
例1: 在这个例子中,我们将创建一个示范性的数据集,然后用这个数据集绘制一个三维群集图。
#Importing plotlt library
library(plotly)
#Creating Dataframe
x = c(1, 2, 3, 4, 5)
y = c(10, 20, 30, 40, 50)
z = c(2, 4, 8, 16, 32)
df = data.frame(x, y, z)
df
#Plotting 3-D Scatter plot.
#Pass dataframe and axes
plt <- plot_ly(df, x = ~x, y = ~y, z = ~z)
#Add markers to the chart
plt <- plt %>% add_markers()
#Labeling the axes.
plt <- plt %>% layout(scene = list(xaxis = list(title = 'x-axis'),
yaxis = list(title = 'y-axis'),
zaxis = list(title = 'z-axis')))
plt
输出
例2: 在这个例子中,我们将使用虹膜数据集,然后用任意三个独立的特征将其与原始标签绘制出来。
#Importing Library
library(plotly)
#Using iris dataset
#Removing Catogerical Values
data = iris[, 1:4]
#Findind Clusters
datacluster = factor(kmeans(data, 3)cluster)
#Plotting the Data
clust<- plot_ly(data, x=~Sepal.Length,
y=~Sepal.Width,
z=~Petal.Width,
color=~cluster) %>%
add_markers(size=1.5)
#Printing 3-D Clusters
clust
输出