2022年夏 数据可视化期末复习(*机试)

目录

考试要求:

考试准备:

一、Pyecharts + Streamlit

1)timeline轮播年份

2)streamlit控件年份+图表

3)线图+zoom滑块在左侧, logY效果

二、Metabase + Sql

1) 启动

2)一个用问题(线图或需要的饼图)

3)一个用SQL(饼图或柱状图)


考试要求:

开卷机试题:提前准备

一、展示出gdp 四个地方(考试给)随时间变化的效果(柱状图、饼图、考试决定)。

可选方案:(动态2+静态1):

timeline轮播年份(柱状图或者饼图)、(动态)(选这个)

streamlit控件年份+图表、(静态)(不选这个,太浪费时间还不能用notebook)

线图+zoom滑块在左侧, logY效果 (动态)(选这个)

二、Metabase制作一个面板包含两个图表:

一个用问题(线图或需要的饼图),

一个用SQL(饼图或柱状图)

第一题至少准备两种方案,ABC卷会减少一种方案选择(选timeline与zoom,如果老师减少的方案是老师决定的,那可能只能迫不得已的选择streamlit)

考试准备:

可以选择的风格:(防止重复请选择其他风格替换掉文中风格,文中使用的是15. PURPLE_PASSION = 'purple-passion' #紫色激情)

  1. BUILTIN_THEMES = ['light', 'dark', 'white']

  2. |

  3. | CHALK = 'chalk' #粉笔风

  4. |

  5. | DARK = 'dark' #暗黑风

  6. |

  7. | ESSOS = 'essos' #厄索斯大陆

  8. |

  9. | INFOGRAPHIC = 'infographic' #信息图

  10. |

  11. | LIGHT = 'light' #明亮风格

  12. |

  13. | MACARONS = 'macarons' #马卡龙

  14. |

  15. | PURPLE_PASSION = 'purple-passion' #紫色激情

  16. |

  17. | ROMA = 'roma' #石榴

  18. |

  19. | ROMANTIC = 'romantic' #浪漫风

  20. |

  21. | SHINE = 'shine' #闪耀风

  22. |

  23. | VINTAGE = 'vintage' #复古风

  24. |

  25. | WALDEN = 'walden' #瓦尔登湖

  26. |

  27. | WESTEROS = 'westeros' #维斯特洛大陆

  28. |

  29. | WHITE = 'white' #洁白风

  30. |

  31. | WONDERLAND = 'wonderland' #仙境

一、Pyecharts + Streamlit

# step1: 获取数据
# 北京 上海 江苏 广东 2010-2013 4年 gdp数据

years = [i for i in range(2010, 2013+1)]

data = [
[14113.58, 16251.93, 17879.4, 19800.81],
[17165.98, 19195.69, 20181.72, 21818.15],
[41425.48, 49110.27, 54058.22, 59753.37],
[46013.06, 53210.28, 57067.92, 62474.79],
]

bj = data[0]
sh = data[1]
js = data[2]
gd = data[3]


1)timeline轮播年份

柱状图:

# step2: 绘图

from pyecharts import options as opts
from pyecharts.charts import Bar, Timeline
from pyecharts.globals import ThemeType
from pyecharts.commons.utils import JsCode

# 三阶
tl = Timeline(init_opts=opts.InitOpts(theme=ThemeType.PURPLE_PASSION))
for i in range(3+1):
    year = 2010 + i
    cost = [bj[i], sh[i], js[i], gd[i]]
    bar = (
        Bar(init_opts=opts.InitOpts(theme=ThemeType.PURPLE_PASSION))
            .add_xaxis(use_pro)
            .add_yaxis("gdp",cost, category_gap="60%") 
            .set_global_opts(title_opts=opts.TitleOpts(title=""))
            .set_series_opts(
                datazoom_opts=[opts.DataZoomOpts()],
                label_opts=opts.LabelOpts(is_show=False),
                markpoint_opts=opts.MarkPointOpts(
                    data=[
                        opts.MarkPointItem(type_="max", name="最大值"),
                        opts.MarkPointItem(type_="min", name="最小值"),
                        opts.MarkPointItem(type_="average", name="平均值"),
                    ]
                ),
            )
    )
    tl.add(bar, "{}年".format(year))
tl.render_notebook()

 结果展示:

 饼图:

from pyecharts import options as opts
from pyecharts.globals import ThemeType
from pyecharts.charts import Pie
from pyecharts.faker import Faker


tl = Timeline(init_opts=opts.InitOpts(theme=ThemeType.PURPLE_PASSION))
for i in range(4):
    year = 2010 + i
    
    # 转变成饼图需要的数据格式【[str, int], [str,int]...】
    zie = [
        ['北京', bj[i]],
        ['上海', sh[i]],
        ['江苏', js[i]],
        ['广东', gd[i]]
    ]

    pie = (
        # Bar(init_opts=opts.InitOpts(theme=ThemeType.DARK))
        Pie(init_opts=opts.InitOpts(theme=ThemeType.PURPLE_PASSION))
        .add(
            "",
            zie,
            radius=["30%", "75%"],
            rosetype="radius",
            label_opts=opts.LabelOpts(is_show=True),
        )
        .set_global_opts(title_opts=opts.TitleOpts(title="Pie-中国大陆电影评分占比"))
    )
    tl.add(pie, "{}年".format(year))
tl.render_notebook()

 结果展示:

2)streamlit控件年份+图表(柱状与饼状)

(不选择,随便搞搞)看他的

数数据可视化实战案例(timeline轮播图,streamlit 控件年份 metabase可视化使用教程)2.0_南师大蒜阿熏呀的博客-CSDN博客

3)线图+zoom滑块在左侧, logY效果

(logY-我们平常的网页logY都在右边,对就是你天天滑来滑去那个)

# step2: 绘图
from pyecharts.faker import Faker
from pyecharts.globals import ThemeType
from pyecharts.charts import Line
from pyecharts import options as opts

line = (
    Line(init_opts=opts.InitOpts(theme=ThemeType.PURPLE_PASSION))
        .add_xaxis(years)
        .add_yaxis("北京",bj)
        .add_yaxis("上海",sh)
        .add_yaxis("江苏",js)
        .add_yaxis("广东",gd)
        .set_global_opts(
            datazoom_opts=[opts.DataZoomOpts(orient="vertical")]
        )
        .set_series_opts(
            label_opts=opts.LabelOpts(is_show=True)
        )
)
line.render_notebook()

  结果展示:

二、Metabase + Sql

1) 启动

2)一个用问题(线图或需要的饼图)

3)一个用SQL(饼图或柱状图)

评论 4
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

大气层煮月亮

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值