Pyecharts--常见动态图绘制

一、折线图

from pyecharts.charts import Line
from pyecharts.options import TitleOpts,LegendOpts,ToolboxOpts,VisualMapOpts
# 得到折线图对象
line = Line()

# 添加x轴数据
line.add_xaxis(["中国","美国","德国"])
# 添加y轴数据
line.add_yaxis("GDP",[30,20,10])
# 设置全局配置项
line.set_global_opts(
    title_opts=TitleOpts(title="GDP展示",pos_left="center",pos_bottom="1%"),
    legend_opts = LegendOpts(is_show=True),
    toolbox_opts=ToolboxOpts(is_show=True),
    visualmap_opts=VisualMapOpts(is_show=True)
)
# 生成图像
line.render()

二、地图

from pyecharts.charts import Map
from pyecharts.options import VisualMapOpts

# 准备地图对象
map = Map()

# 准备数据
data = [
    ("北京市",99),
    ("上海市",55),
    ("黑龙江省",144),
    ("广东省",96),
    ("吉林省",67),
]
# 添加数据
map.add("测试地图",data,"china")
# 设置全局选项
map.set_global_opts(
    visualmap_opts=VisualMapOpts(
        is_show=True,
        is_piecewise=True, #  设置分段
        pieces=[  #  手动设置分段颜色
            {"min":1,"max":9,"lable":"1-9","color":"#CCFFFF"},
            {"min":10,"max":99,"lable":"10-99","color":"#FF6666"},
            {"min":100,"max":500,"lable":"100-500","color":"#990033"},
        ]
    )
)
# 绘图
map.render()

 

三、柱状图

from pyecharts.charts import Bar

bar = Bar()
bar.add_xaxis(["衬衫", "羊毛衫", "雪纺衫", "裤子", "高跟鞋", "袜子"])
bar.add_yaxis("商家A", [5, 20, 36, 10, 75, 90])
# render 会生成本地 HTML 文件,默认会在当前目录生成 render.html 文件
# 也可以传入路径参数,如 bar.render("mycharts.html")
bar.render()

 四、饼图

from pyecharts.charts import Pie
from pyecharts import options as opts

# 准备数据
data = [("Mon", 820), ("Tue", 932), ("Wed", 901), ("Thu", 934), ("Fri", 1290), ("Sat", 1330), ("Sun", 1320)]

# 创建饼图对象
pie = Pie()

# 添加数据
pie.add("", data)

# 设置全局配置
pie.set_global_opts(
    title_opts=opts.TitleOpts(title="一周销量占比"),
    legend_opts=opts.LegendOpts(orient="vertical", pos_top="15%", pos_left="2%"),
)

# 设置系列配置
pie.set_series_opts(label_opts=opts.LabelOpts(formatter="{b}: {c}"))

# 展示图表
pie.render("pie.html")

五、散点图 

from pyecharts.charts import Scatter
from pyecharts import options as opts

# 准备数据
data = [
    [10.0, 8.04],
    [8.0, 6.95],
    [13.0, 7.58],
    [9.0, 8.81],
    [11.0, 8.33],
    [14.0, 9.96],
    [6.0, 7.24],
    [4.0, 4.26],
    [12.0, 10.84],
    [7.0, 4.82],
    [5.0, 5.68]
]

# 创建散点图对象
scatter = Scatter()

# 添加数据
scatter.add_xaxis([item[0] for item in data])
scatter.add_yaxis("", [item[1] for item in data])

# 设置全局配置
scatter.set_global_opts(
    title_opts=opts.TitleOpts(title="散点图示例"),
    xaxis_opts=opts.AxisOpts(name="X轴"),
    yaxis_opts=opts.AxisOpts(name="Y轴"),
)

# 展示图表
scatter.render("scatter.html")

 六、漏斗图 

from pyecharts.charts import Funnel
from pyecharts import options as opts

# 准备数据
data = [("展现", 100), ("点击", 80), ("访问", 60), ("咨询", 40), ("订单", 20)]

# 创建漏斗图对象
funnel = Funnel()

# 添加数据
funnel.add("", data)

# 设置全局配置
funnel.set_global_opts(
    title_opts=opts.TitleOpts(title="漏斗图示例"),
    legend_opts=opts.LegendOpts(pos_top="10%"),
)

# 展示图表
funnel.render("funnel.html")

 

六、仪表盘

from pyecharts.charts import Gauge
from pyecharts import options as opts

# 创建仪表盘对象
gauge = Gauge()

# 添加数据
gauge.add("", [("完成率", 66.6)])

# 设置全局配置
gauge.set_global_opts(
    title_opts=opts.TitleOpts(title="仪表盘示例"),
    legend_opts=opts.LegendOpts(is_show=False),
)

# 设置系列配置
gauge.set_series_opts(
    axisline_opts=opts.AxisLineOpts(
        linestyle_opts=opts.LineStyleOpts(width=30)
    ),
)

# 展示图表
gauge.render("gauge.html")

 

七、K线图

from pyecharts.charts import Kline
from pyecharts import options as opts

# 准备数据
data = [
    [2320.26, 2302.6, 2287.3, 2362.94],
    [2300, 2291.3, 2288.26, 2308.38],
    [2295.35, 2346.5, 2295.35, 2346.92],
    [2347.22, 2358.98, 2337.35, 2363.8],
    [2360.75, 2382.48, 2347.89, 2383.76],
    [2383.43, 2385.42, 2371.23, 2391.82],
    [2377.41, 2419.02, 2369.57, 2421.15],
    [2425.92, 2428.15, 2417.58, 2440.38],
    [2411, 2433.13, 2403.3, 2437.42],
    [2432.68, 2334.48, 2427.7, 2441.73]
]

# 创建K线图对象
kline = Kline()

# 添加数据
kline.add_xaxis([str(i) for i in range(1, len(data)+1)])
kline.add_yaxis("K线图", data)

# 设置全局配置
kline.set_global_opts(
    title_opts=opts.TitleOpts(title="K线图示例"),
    xaxis_opts=opts.AxisOpts(name="日期"),
    yaxis_opts=opts.AxisOpts(name="价格"),
)

# 展示图表
kline.render("kline.html")

 

八、词云

from pyecharts.charts import WordCloud
from pyecharts.globals import SymbolType
from pyecharts import options as opts

# 准备数据
data = [
    ("Python", 10000),
    ("Java", 8000),
    ("C++", 7000),
    ("JavaScript", 6000),
    ("C#", 5000),
    ("PHP", 4000),
    ("Swift", 3000),
    ("Objective-C", 2000),
    ("Ruby", 1000),
    ("R", 900),
    ("Scala", 800),
    ("Go", 700),
    ("Kotlin", 600),
    ("Lua", 500),
    ("Perl", 400),
    ("Groovy", 300),
    ("Dart", 200),
    ("Visual Basic", 100),
]

# 创建词云对象
wordcloud = WordCloud()

# 添加数据
wordcloud.add("", data, word_size_range=[20, 100], shape=SymbolType.DIAMOND)

# 设置全局配置
wordcloud.set_global_opts(
    title_opts=opts.TitleOpts(title="词云示例"),
    tooltip_opts=opts.TooltipOpts(is_show=True),
)

# 展示图表
wordcloud.render("wordcloud.html")

 

九、组合图表

from pyecharts.charts import Bar, Line
from pyecharts import options as opts
from pyecharts.globals import ThemeType

# 准备数据
x_data = ["Mon", "Tue", "Wed", "Thu", "Fri", "Sat", "Sun"]
y_data1 = [120, 200, 150, 80, 70, 110, 130]
y_data2 = [90, 150, 200, 170, 160, 150, 120]

# 创建组合图表对象
combo = Bar(init_opts=opts.InitOpts(theme=ThemeType.LIGHT))

# 添加数据
combo.add_xaxis(x_data)
combo.add_yaxis("A", y_data1)
combo.extend_axis(
    yaxis=opts.AxisOpts(
        name="B",
        type_="value",
        position="right",
        axisline_opts=opts.AxisLineOpts(
            linestyle_opts=opts.LineStyleOpts(color="#675bba")
        ),
        axislabel_opts=opts.LabelOpts(formatter="{value} °C"),
    )
)
combo.add_yaxis("B", y_data2, yaxis_index=1)

# 设置全局配置
combo.set_global_opts(
    title_opts=opts.TitleOpts(title="组合图表示例"),
    xaxis_opts=opts.AxisOpts(name="日期"),
    yaxis_opts=opts.AxisOpts(name="A", splitline_opts=opts.SplitLineOpts(is_show=False)),
    tooltip_opts=opts.TooltipOpts(trigger="axis", axis_pointer_type="cross"),
)

# 添加折线图
line = Line()
line.add_xaxis(x_data)
line.add_yaxis("C", [50, 60, 70, 80, 90, 100, 110], yaxis_index=1)

# 合并图表
combo.overlap(line)

# 展示图表
combo.render("combo.html")

 

 

 

 

  • 6
    点赞
  • 13
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
### 回答1: pyecharts是一个用于生成图表的Python库,可以帮助用户轻松地创建各种类型的图表,例如折线图、柱状图、饼图等。而动态数据大屏是基于pyecharts开发的一种可视化展示工具,可以将动态数据以更直观的方式呈现出来。 动态数据大屏主要借助pyecharts库提供的接口来实现动态数据更新和图表的刷新。用户可以通过编写Python代码来获取实时动态数据,并使用pyecharts库生成对应的图表。然后,通过动态数据大屏工具的配置,将生成的图表展示在大屏上。 动态数据大屏可以帮助用户实时监控和展示数据的变化趋势,从而更好地把握数据的动态变化情况。用户可以根据自身需求,选择合适的图表类型和展示方式,将复杂的数据以直观、易懂的方式展示出来。 例如,用户可以使用动态数据大屏来展示某个城市的即时天气情况,通过pyecharts生成柱状图显示温度变化趋势,折线图展示风速变化,饼图展示降水量比例等。通过动态数据大屏,用户可以实时了解天气情况的变化,并更加直观地观察到各项数据的变化趋势。 总的来说,pyecharts动态数据大屏为用户提供了一种便捷的方式来展示动态数据,通过合理的选择和配置,能够创造出高效、直观、易懂的大屏展示效果。它在数据可视化方面具有较高的灵活性和扩展性,可以满足用户对于动态数据展示的需求。 ### 回答2: pyecharts是一款基于Python的数据可视化库,可以生成各种形式的图表。动态数据大屏是指能够实时展示数据的大屏幕应用。结合pyecharts,我们可以快速搭建一个功能强大的动态数据大屏。 首先,我们需要导入所需的库,包括pyecharts、pandas和time等。 然后,我们可以使用pandas库来读取数据源,比如Excel或CSV文件。接着,利用pyecharts提供的各种图表类型和样式设置,生成所需的图表。 在动态数据大屏中,我们需要实时更新数据并展示最新的信息。为此,我们可以使用定时器函数来定时刷新数据,并更新图表展示。比如,每隔1分钟读取一次最新的数据,并重新绘制图表。 同时,为了更好地展示数据,我们可以利用pyecharts提供的交互功能,比如添加鼠标悬停提示、点击事件等。这样用户就可以通过鼠标与图表进行交互,查看详细的数据信息。 另外,为了增强可视化效果,我们还可以添加一些动画效果。比如,可以使用pyecharts提供的动画插件,实现图表的平滑过渡和动态效果。 最后,将生成的图表展示在大屏幕上,并适当调整图表的布局和大小,以适应大屏幕的展示。 综上所述,利用pyecharts可以方便地实现一个功能强大且美观的动态数据大屏。它不仅能展示实时更新的数据,还能提供交互功能和动画效果,帮助用户更好地理解和分析数据。 ### 回答3: pyecharts是一种基于Python的数据可视化库,可以用于创建各种各样的图表和大屏展示。动态数据大屏是指在展示数据的过程中,数据会不断发生变化,而且这种变化是实时呈现在大屏上的。 使用pyecharts创建动态数据大屏可以分为以下几个步骤: 1. 数据获取:首先需要获取数据,可以通过各种方式,比如数据库查询、API调用等。获取到的数据应该是实时变化的数据。 2. 数据处理:对获取到的数据进行处理,使其符合pyecharts的数据格式要求,比如将数据转化为字典或列表形式。 3. 创建图表:使用pyecharts提供的各种图表类型,比如折线图、柱状图等,根据需求选择合适的图表类型,将处理后的数据传入并生成图表。 4. 更新数据:通过定时任务或其他方式,定期获取最新的数据,并更新到已创建的图表中,实现图表的动态变化。 5. 展示大屏:将生成的图表以合适的布局方式展示在大屏上,可以选择使用Web框架进行展示,比如Flask或Django,或者直接使用图形化界面工具。 6. 设置交互:在大屏上设置一些交互功能,比如点击图表可以查看详细信息、切换不同的时间范围等,增加用户体验。 通过以上步骤,就可以实现使用pyecharts创建动态数据大屏。在展示过程中,数据会不断更新,用户可以实时观察数据变化,从而更好地了解数据趋势和变化。这种动态数据大屏可以应用于各种场景,比如实时监控、数据分析等,帮助用户做出更准确的决策。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值