MIT大神写给女神的Q版Python画图库—Cutecharts

简介: Q版Python会图库Cutecharts使用教程。

MIT大神写给女神的Q版Python画图库—Cutecharts

画图不好看?不可爱?不萌?本文二哥教大家来进行Q版绘图。
【建议先点赞、再收藏】

还记得那是一个月黑风高的晚上,一位女同事让我给他讲解数据分析结果的时候,我默默的用python画了下面这张图。

请添加图片描述

依稀记得女同事看了之后,立刻转身离去,并留下了一句”哼,臭屌丝“,留下懵逼的我凌乱在风中。

凌乱的我对这张图左看、右看、上看、下看,终于明白在不懂技术的妹子眼中,这种正经的图表简直就是屌丝的象征。为了避免下一次同样的事情发生,我翻遍了Python的可视化库,终于找到了一个能够征服妹子的可视化库——cutecharts。

cutecharts是由麻省理工学院的大神们改写的一款萌萌哒的可视化工具,下面就来看一下如何用萌萌哒的图表征服你心爱的妹子。

cutecharts安装

pip install cutecharts

共用函数

__init__()

说明

  • 初始化函数

参数

  • title: Optionalstr = None 图表标题
  • width: str = "800px" 图表宽度
  • height: str = "600px" 图表高度
  • assets\_host: Optionalstr = None 引用资源 Host

render()

说明

  • 用于生成HTML文件

参数

  • dest: str = "render.html" 渲染的文件路径
  • template\_name: str = "basic\_local.html" 渲染使用的模板,一般不需要修改

render_notebook()

说明

  • 用于在notebook中展示图表

参数

  • template\_type: str = "basic" 渲染使用的模板类型,一般不需要修改

load_javascript()

  • 加载 JS 依赖,在 JupyterLab 渲染时使用。

柱状图的使用

函数:cutecharts.charts.Bar

设置项:cutecharts.charts.Bar.set\_options

参数(设置项)

  • labels: Iterable X 坐标轴标签数据
  • x\_label: str = "" X 坐标轴名称
  • y\_label: str = "" Y 坐标轴名称
  • y\_tick\_count: int = 3 Y 轴刻度分割段数
  • colors: OptionalIterable = None label 颜色数组
  • font\_family: Optionalstr = None CSS font-family

数据添加:cutecharts.charts.Bar.add\_series

参数(设置项)

  • name: str series 名称
  • data: Iterable series 数据列表

基本示例

  • 注:在cutecharts.faker中存在了很多示例数据,我们直接使用即可。
from cutecharts.charts import Bar
from cutecharts.components import Page
from cutecharts.faker import Faker


def bar_base():
    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


# 生成HTML文件
bar_base().render()
# 生成notebook显示
bar_base().render_notebook()

结果

请添加图片描述

折线图的使用

函数:cutecharts.charts.Line

设置项:cutecharts.charts.Line.set\_options

参数(设置项)

  • 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: OptionalIterable = None label 颜色数组
  • font\_family: Optionalstr = None CSS font-family

数据添加:cutecharts.charts.Line.add\_series

参数(数据添加)

  • name: str series 名称
  • data: Iterable series 数据列表

基本示例

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",
                      legend_pos="upRight")
    chart.add_series("series-A", Faker.values())
    chart.add_series("series-B", Faker.values())
    return chart


# 生成HTML文件
line_base().render()
# 生成notebook显示
line_base().render_notebook()

结果
请添加图片描述

饼图的使用

函数:cutecharts.charts.Pie

设置项:cutecharts.charts.Pie.set\_options

参数(设置项)

  • labels: Iterable 数据标签列表
  • inner\_radius: float = 0.5 Pie 图半径
  • legend\_pos: str = "upLeft" 图例位置,有 "upLeft", "upRight", "downLeft", "downRight" 可选
  • colors: OptionalIterable = None label 颜色数组
  • font\_family: Optionalstr = None CSS font-family

数据添加:cutecharts.charts.Pie.add\_series

参数(数据添加)

data: Iterable series 数据列表

基本示例

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


# 生成HTML文件
pie_base().render()
# 生成notebook显示
pie_base().render_notebook()

结果

请添加图片描述

实心饼图示例

def pie_radius():
    chart = Pie("Pie-Radius")
    chart.set_options(
        labels=Faker.choose(),
        inner_radius=0,
    )
    chart.add_series(Faker.values())
    return chart


# 生成HTML文件
pie_radius().render()
# 生成notebook显示
pie_radius().render_notebook()

结果

请添加图片描述

雷达图的使用

函数:cutecharts.charts.Radar

设置项:cutecharts.charts.Radar.set\_options

参数(设置项)

  • 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: OptionalIterable = None label 颜色数组
  • font\_family: Optionalstr = None CSS font-family

数据添加:cutecharts.charts.Radar.add\_series

参数(数据添加)

  • name: str series 名称
  • data: Iterable series 数据列表

基本示例

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


# 生成HTML文件
radar_base().render()
# 生成notebook显示
radar_base().render_notebook()

结果

请添加图片描述

散点图的使用

函数:cutecharts.charts.Scatter

设置项:cutecharts.charts.Scatter.set\_options

参数(设置项)

  • x\_label: str = "" X 坐标轴名称
  • y\_label: str = "" Y 坐标轴名称
  • x\_tick\_count: int = 3 X 轴刻度分割段数
  • y\_tick\_count: int = 3 Y 轴刻度分割段数
  • is\_show\_line: bool = False 是否将散点连成线
  • dot\_size: int = 1 散点大小
  • time\_format: Optionalstr = None 日期格式
  • legend\_pos: str = "upLeft" 图例位置,有 "upLeft", "upRight", "downLeft", "downRight" 可选
  • colors: OptionalIterable = None label 颜色数组
  • font\_family: Optionalstr = None CSS font-family

数据添加:cutecharts.charts.Scatter.add\_series

参数(数据添加)

  • name: str series 名称
  • data: Iterable series 数据列表,(x1, y1), (x2, y2)

基本示例

from cutecharts.charts import Scatter
from cutecharts.components import Page
from cutecharts.faker import Faker


def scatter_base() -> Scatter:
    chart = Scatter("Scatter-基本示例")
    chart.set_options(x_label="I'm xlabel", y_label="I'm ylabel")
    chart.add_series("series-A",
                     [(z[0], z[1])
                      for z in zip(Faker.values(), Faker.values())])
    chart.add_series("series-B",
                     [(z[0], z[1])
                      for z in zip(Faker.values(), Faker.values())])
    return chart


# 生成HTML文件
scatter_base().render()
# 生成notebook显示
scatter_base().render_notebook()

结果

请添加图片描述

总结

cutecharts的功能虽然比不上pyecharts那么强大,但是这些基本的图表已经可以满足我们大部分的需求了,各位还等什么!为了你心中的女神!做一个文艺范的“程序猿”,快动起来吧~

相关文章
|
4月前
|
Python
`matplotlib`是Python中一个非常流行的绘图库,它提供了丰富的绘图接口,包括二维和三维图形的绘制。`Axes3D`是`matplotlib`中用于创建三维坐标轴的对象,而`plot_surface`则是用于在三维空间中绘制表面的函数。
`matplotlib`是Python中一个非常流行的绘图库,它提供了丰富的绘图接口,包括二维和三维图形的绘制。`Axes3D`是`matplotlib`中用于创建三维坐标轴的对象,而`plot_surface`则是用于在三维空间中绘制表面的函数。
|
5月前
|
Python
【python绘图库turtle实战】使用python绘图库turtle绘制:太阳花、彩虹线与小黄人【含完整源码】
【python绘图库turtle实战】使用python绘图库turtle绘制:太阳花、彩虹线与小黄人【含完整源码】
|
6月前
|
定位技术 Python
Anaconda环境配置Python绘图库Matplotlib的方法
Anaconda环境配置Python绘图库Matplotlib的方法
171 1
|
数据可视化 数据挖掘 定位技术
数据的绘画工场:Python绘图库Pyecharts,打造引人入胜的可视化效果
数据的绘画工场:Python绘图库Pyecharts,打造引人入胜的可视化效果
133 0
|
机器学习/深度学习 数据采集 人工智能
民谣女神唱流行,基于AI人工智能so-vits库训练自己的音色模型(叶蓓/Python3.10)
流行天后孙燕姿的音色固然是极好的,但是目前全网都是她的声音复刻,听多了难免会有些审美疲劳,在网络上检索了一圈,还没有发现民谣歌手的音色模型,人就是这样,得不到的永远在骚动,本次我们自己构建训练集,来打造自己的音色模型,让民谣女神来唱流行歌曲,要多带劲就有多带劲。
|
机器学习/深度学习 Python
一篇文章掌握Python机器学习绘图库matplotlib(二)
一篇文章掌握Python机器学习绘图库matplotlib(二)
184 2
一篇文章掌握Python机器学习绘图库matplotlib(二)
|
机器学习/深度学习 BI Python
一篇文章掌握Python机器学习绘图库matplotlib(一)
一篇文章掌握Python机器学习绘图库matplotlib(一)
253 2
一篇文章掌握Python机器学习绘图库matplotlib(一)
|
数据挖掘 Python
Python数据分析与展示:matplotlib绘图库入门-6
Python数据分析与展示:matplotlib绘图库入门-6
195 0
Python数据分析与展示:matplotlib绘图库入门-6
|
Python
用Python助女神发朋友圈
爱美是人类的天性,特别是女性。她们不仅喜欢打扮自己,还喜欢晒圈儿分享美好的事物。今天就教大家一个朋友圈晒图利器——切割图片。
140 0
用Python助女神发朋友圈