s2 = ( Scatter() .add_xaxis(df_price.index.tolist()) .add_yaxis('门票价格区间', df_price.values.tolist(),symbol_size=50) .set_global_opts( yaxis_opts=opts.AxisOpts(name='数量'), xaxis_opts=opts.AxisOpts(name='价格区间(元)')) .set_global_opts(visualmap_opts=opts.VisualMapOpts(is_show=False, # 设置通过图形大小来表现数据 type_='size', # 图形大小映射范围 range_size=[5,50])) )
时间: 2024-02-10 17:10:02 浏览: 29
这段代码是使用 pyecharts 可视化库来生成一个散点图,其中 x 轴是门票价格区间,y 轴是数量。数据来源是一个 pandas 数据框 df_price,通过 add_xaxis 和 add_yaxis 方法将数据添加到散点图中。同时,通过 set_global_opts 方法设置了 x 轴和 y 轴的名称,并添加了一个 visualmap 来通过图形大小来表现数据,其中 range_size 指定了图形大小的映射范围。
相关问题
Scatter() .add_xaxis(df_counts.index.values.tolist()) .add_yaxis('4A-5A景区数量', df_counts.values.tolist(),symbol_size=50,itemstyle_opts=item_style) .set_global_opts(visualmap_opts=opts.VisualMapOpts(is_show=False, type_='size', range_size=[5,50])
这段代码是使用 pyecharts 库创建一个散点图。首先使用 `Scatter()` 方法创建一个散点图对象,然后使用 `add_xaxis()` 方法向散点图中添加 x 轴数据,即 `df_counts.index.values.tolist()` 表示将 `df_counts` 数据框的索引转换为列表。接着使用 `add_yaxis()` 方法向散点图中添加 y 轴数据,即 `'4A-5A景区数量'` 表示数据系列的名称为“4A-5A景区数量”,`df_counts.values.tolist()` 表示将 `df_counts` 数据框的值转换为列表。`symbol_size=50` 表示设置散点的大小为 50,`itemstyle_opts=item_style` 表示设置散点的样式为 `item_style`。接下来使用 `set_global_opts()` 方法为图表设置全局选项,其中 `visualmap_opts=opts.VisualMapOpts(...)` 表示设置可视化映射的选项,其中包含多个参数。`is_show=False` 表示不显示可视化映射,`type_='size'` 表示设置可视化映射的类型为大小映射,即根据数据大小映射散点大小,`range_size=[5,50]` 表示设置散点大小的数据范围为 5 到 50。最终,这段代码将生成一个散点图,并将其展示在当前的 notebook 中。
# data = pd.concat([dates_year, dates_ratings, dates_votes], axis=1) df.columns = ['上映年份', '电影评分', '评分人数'] data = data.groupby('上映年份').agg({'上映年份': 'mean', '评分人数': 'sum'}).reset_index() # 绘制散点图 scatter = ( Scatter() .add_xaxis(data['上映年份'].tolist()) .add_yaxis("电影评分", data['电影评分'].tolist(), symbol_size=10, label_opts=opts.LabelOpts(is_show=False)) .add_yaxis("评分人数", data['评分人数'].tolist(), symbol_size=10, label_opts=opts.LabelOpts(is_show=False)) .set_global_opts( title_opts=opts.TitleOpts(title="电影年份评分人数散点图"), tooltip_opts=opts.TooltipOpts(trigger="axis", axis_pointer_type="cross"), xaxis_opts=opts.AxisOpts(name='上映年份', type_="category"), yaxis_opts=[ opts.AxisOpts(name='电影评分', type_="value"), opts.AxisOpts(name='评分人数', type_="value", position="right") ], datazoom_opts=[opts.DataZoomOpts(is_show=True, range_start=0, range_end=20, orient='horizontal')] ) ) scatter.render_notebook() 优化代码
# 使用链式调用
data = pd.concat([dates_year, dates_ratings, dates_votes], axis=1)
data.columns = ['上映年份', '电影评分', '评分人数']
data = data.groupby('上映年份').agg({'电影评分': 'mean', '评分人数': 'sum'}).reset_index()
# 绘制散点图
scatter = (
Scatter()
.add_xaxis(data['上映年份'].tolist())
.add_yaxis("电影评分", data['电影评分'].tolist(), symbol_size=10, label_opts=opts.LabelOpts(is_show=False))
.add_yaxis("评分人数", data['评分人数'].tolist(), symbol_size=10, label_opts=opts.LabelOpts(is_show=False))
.set_global_opts(
title_opts=opts.TitleOpts(title="电影年份评分人数散点图"),
tooltip_opts=opts.TooltipOpts(trigger="axis", axis_pointer_type="cross"),
xaxis_opts=opts.AxisOpts(name='上映年份', type_="category"),
yaxis_opts=[
opts.AxisOpts(name='电影评分', type_="value"),
opts.AxisOpts(name='评分人数', type_="value", position="right")
],
datazoom_opts=[opts.DataZoomOpts(is_show=True, range_start=0, range_end=20, orient='horizontal')]
)
)
scatter.render_notebook()
相关推荐
![rar](https://img-home.csdnimg.cn/images/20210720083606.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)