【导读】:对于数据可视化工具,如果你有点腻烦了常见格调(比方:Matplotlib
和 pyecharts
),那能够试试换一种格调。
本文前哨君给大家介绍一个格调齐全不一样的开源库:cutecharts
,其 UI 效仿 XKCD 漫画格调,在局部场景(比方:集体作品展现)的成果或者会更好。
补充:XKCD 是一个 IT 漫画网站,在国外十分有名气。
为什么会有 cutecharts?
据 cutecharts 的开发者介绍,他集体十分喜爱一个 JS 图表库 chart.xkcd,但它反对的图表类型不多,比 pyecharts 少很多。
Javascript 在数据交互和视觉效果上更有劣势,而 Python 是一种深受数据科学界的青睐的语言。因而,他想联合这两种技术的力量,于是就开发了 cutecharts.py。
此外,cutecharts 更多的是一个库,用来学习如何将 Javascript 世界与 Python/notebook 相结合。cutecharts 的我的项目构造与 pyecharts 雷同,它反对 pyechart s 的所有外围性能,同时更轻量级,总体上也更简洁。
GitHub 地址:
https://github.com/chenjiando…
简略应用
一行命令先装置好该库:
pip install cutecharts
上面就是 cutecharts 我的项目主页提供的一些示例。
首先是一些图表共通的参数:
Commons
不同图表有着局部雷同的办法。
__init__
Params Desc
------ ----
title: Optional[str] = None 图表题目
width: str = "800px" 图表宽度
height: str = "600px" 图表高度
assets_host: Optional[str] = None 援用资源 Host
render
Params Desc
------ ----
dest: str = "render.html" 渲染的文件门路
template_name: str = "basic_local.html" 渲染应用的模板,个别不须要批改
render_notebook
Params Desc
------ ----
template_type: str = "basic" 渲染应用的模板类型,个别不须要批改
load_javascript
加载 JS 依赖,在 JupyterLab 渲染时应用。
Bar(柱状图)
cutecharts.charts.Bar
API
cutecharts.charts.Bar.set_options
Params Desc
------ ----
labels: Iterable X 坐标轴标签数据
x_label: str = "" X 坐标轴名称
y_label: str = "" Y 坐标轴名称
y_tick_count: int = 3 Y 轴刻度宰割段数
colors: Optional[Iterable] = None label 色彩数组
font_family: Optional[str] = None CSS font-family
cutecharts.charts.Bar.add_series
Params Desc
------ ----
name: str series 名称
data: Iterable series 数据列表
Demo
Bar- 根本示例
from cutecharts.charts import Bar
from cutecharts.components import Page
from cutecharts.faker import Faker
def bar_base() -> Bar:
chart = Bar("Bar- 根本示例")
chart.set_options(labels=Faker.choose(), x_label="I'm xlabel", y_label="I'm ylabel")
chart.add_series("series-A", Faker.values())
return chart
bar_base().render()
Bar- 调整色彩
def bar_tickcount_colors():
chart = Bar("Bar- 调整色彩")
chart.set_options(labels=Faker.choose(), y_tick_count=10, colors=Faker.colors)
chart.add_series("series-A", Faker.values())
return chart
Line(折线图)
cutecharts.charts.Line
API
cutecharts.charts.Line.set_options
Params Desc
------ ----
labels: Iterable X 坐标轴标签数据
x_label: str = "" X 坐标轴名称
y_label: str = "" Y 坐标轴名称
y_tick_count: int = 3 Y 轴刻度宰割段数
legend_pos: str = "upLeft" 图例地位,有 "upLeft", "upRight", "downLeft", "downRight" 可选
colors: Optional[Iterable] = None label 色彩数组
font_family: Optional[str] = None CSS font-family
cutecharts.charts.Line.add_series
Params Desc
------ ----
name: str series 名称
data: Iterable series 数据列表
Demo
Line- 根本示例
from cutecharts.charts import Line
from cutecharts.components import Page
from cutecharts.faker import Faker
def line_base() -> Line:
chart = Line("Line- 根本示例")
chart.set_options(labels=Faker.choose(), x_label="I'm xlabel", y_label="I'm ylabel")
chart.add_series("series-A", Faker.values())
chart.add_series("series-B", Faker.values())
return chart
line_base().render()
Line-Legend 地位
def line_legend():
chart = Line("Line-Legend 地位")
chart.set_options(labels=Faker.choose(), legend_pos="upRight")
chart.add_series("series-A", Faker.values())
chart.add_series("series-B", Faker.values())
return chart
Line- 调整色彩
def line_tickcount_colors():
chart = Line("Line- 调整色彩")
chart.set_options(labels=Faker.choose(), colors=Faker.colors, y_tick_count=8)
chart.add_series("series-A", Faker.values())
chart.add_series("series-B", Faker.values())
return chart
Pie(饼图)
cutecharts.charts.Pie
API
cutecharts.charts.Pie.set_options
Params Desc
------ ----
labels: Iterable 数据标签列表
inner_radius: float = 0.5 Pie 图半径
legend_pos: str = "upLeft" 图例地位,有 "upLeft", "upRight", "downLeft", "downRight" 可选
colors: Optional[Iterable] = None label 色彩数组
font_family: Optional[str] = None CSS font-family
cutecharts.charts.Pie.add_series
Params Desc
------ ----
data: Iterable series 数据列表
Demo
Pie- 根本示例
from cutecharts.charts import Pie
from cutecharts.components import Page
from cutecharts.faker import Faker
def pie_base() -> Pie:
chart = Pie("Pie- 根本示例")
chart.set_options(labels=Faker.choose())
chart.add_series(Faker.values())
return chart
pie_base().render()
Pie-Legend
def pie_legend_font():
chart = Pie("Pie-Legend")
chart.set_options(labels=Faker.choose(),
legend_pos="downLeft",
font_family='"Times New Roman",Georgia,Serif;',
)
chart.add_series(Faker.values())
return chart
Pie-Radius
def pie_radius():
chart = Pie("Pie-Radius")
chart.set_options(labels=Faker.choose(),
inner_radius=0,
)
chart.add_series(Faker.values())
return chart
Radar(雷达图)
cutecharts.charts.Radar
API
cutecharts.charts.Radar.set_options
Params Desc
------ ----
labels: Iterable 数据标签列表
is_show_label: bool = True 是否显示标签
is_show_legend: bool = True 是否显示图例
tick_count: int = 3 坐标系宰割刻度
legend_pos: str = "upLeft" 图例地位,有 "upLeft", "upRight", "downLeft", "downRight" 可选
colors: Optional[Iterable] = None label 色彩数组
font_family: Optional[str] = None CSS font-family
cutecharts.charts.Radar.add_series
Params Desc
------ ----
name: str series 名称
data: Iterable series 数据列表
Demo
Radar- 根本示例
from cutecharts.charts import Radar
from cutecharts.components import Page
from cutecharts.faker import Faker
def radar_base() -> Radar:
chart = Radar("Radar- 根本示例")
chart.set_options(labels=Faker.choose())
chart.add_series("series-A", Faker.values())
chart.add_series("series-B", Faker.values())
return chart
radar_base().render()
Radar- 色彩调整
def radar_legend_colors():
chart = Radar("Radar- 色彩调整")
chart.set_options(labels=Faker.choose(), colors=Faker.colors, legend_pos="upRight")
chart.add_series("series-A", Faker.values())
chart.add_series("series-B", Faker.values())
return chart
这个图表库感激有趣味的童鞋,能够试试。
开源前哨
日常分享热门、乏味和实用的开源我的项目。参加保护 10 万 + Star 的开源技术资源库,包含:Python、Java、C/C++、Go、JS、CSS、Node.js、PHP、.NET 等。