pyecharts画出豆瓣top250电影排名评分人数三维度散点图
时间: 2023-06-26 21:04:37 浏览: 199
以下是使用pyecharts画出豆瓣top250电影排名评分人数三维度散点图的代码。
```python
import pandas as pd
from pyecharts import Scatter3D
# 读取数据
data = pd.read_csv('douban_top250.csv')
# 绘制散点图
scatter3D = Scatter3D("豆瓣Top250电影", width=1200, height=600)
scatter3D.add("", data[['rank', 'rating', 'votes']].values, is_visualmap=True,
visual_range=[0, 1000000], visual_range_color=['#d94e5d', '#eac736', '#50a3ba'])
scatter3D.set_global_opts(title_opts={"text": "豆瓣Top250电影"})
scatter3D.render("douban_top250.html")
```
需要注意的是,上述代码中读取的数据文件`douban_top250.csv`需要自己准备,且需要包含排名、评分和评分人数这三列数据。最后会生成一个名为`douban_top250.html`的html文件,可以在浏览器中打开查看。
相关问题
pyecharts画出豆瓣top250电影排名、评分、人数三维度的散点图
可以使用pyecharts中的Scatter3D来画出豆瓣top250电影排名、评分、人数三维度的散点图。首先需要获取数据,可以使用豆瓣API或者爬虫等方式获取数据,这里为了方便起见,直接使用已经爬取好的数据。
```python
import pandas as pd
from pyecharts import Scatter3D
# 读取数据
df = pd.read_csv('douban_top250.csv')
# 定义x、y、z坐标轴
x_data = list(df['排名'])
y_data = list(df['评分'])
z_data = list(df['评价人数'])
# 定义散点图
scatter3D = Scatter3D("豆瓣top250电影排名、评分、人数三维度的散点图", width=800, height=600)
# 添加坐标轴数据和散点图数据
scatter3D.add("", x_data, y_data, z_data, is_visualmap=True, visual_range=[0, 1000000], visual_range_color=['#00ff00', '#ff0000'])
# 保存图表
scatter3D.render("douban_top250.html")
```
其中,`douban_top250.csv`是已经爬取好的豆瓣top250电影数据,包括排名、电影名称、评分、评价人数等信息。在这里,我们只需要使用排名、评分、评价人数这三个维度的数据。`Scatter3D`用于绘制三维散点图,`x_data`、`y_data`、`z_data`分别对应三个维度的数据,`is_visualmap`表示是否使用视觉映射组件,`visual_range`表示视觉映射组件的范围,`visual_range_color`表示视觉映射组件的颜色范围。最后,将图表保存在`douban_top250.html`文件中。
import pandas as pd from pyecharts import Scatter3D # 读取数据 df = pd.read_csv('douban_top250.csv') # 定义x、y、z坐标轴 x_data = list(df['排名']) y_data = list(df['评分']) z_data = list(df['评价人数']) # 定义散点图 scatter3D = Scatter3D("豆瓣top250电影排名、评分、人数三维度的散点图", width=800, height=600) # 添加坐标轴数据和散点图数据 scatter3D.add("", x_data, y_data, z_data, is_visualmap=True, visual_range=[0, 1000000], visual_range_color=['#00ff00', '#ff0000']) # 保存图表 scatter3D.render("douban_top250.html")换一种画法
可以尝试使用 Matplotlib 库来绘制三维散点图。以下是一个简单的示例代码:
```python
import pandas as pd
import matplotlib.pyplot as plt
from mpl_toolkits.mplot3d import Axes3D
# 读取数据
df = pd.read_csv('douban_top250.csv')
# 定义坐标轴数据
x_data = df['排名']
y_data = df['评分']
z_data = df['评价人数']
# 创建 3D 坐标系
fig = plt.figure()
ax = fig.add_subplot(111, projection='3d')
# 绘制散点图
ax.scatter(x_data, y_data, z_data, c=z_data, cmap='cool', alpha=0.8)
# 设置坐标轴标签
ax.set_xlabel('排名')
ax.set_ylabel('评分')
ax.set_zlabel('评价人数')
# 显示图表
plt.show()
```
你可以根据需要修改代码中的颜色、透明度等参数,以及添加标题、保存图表等操作。
阅读全文