<kbd id="afajh"><form id="afajh"></form></kbd>
<strong id="afajh"><dl id="afajh"></dl></strong>
    <del id="afajh"><form id="afajh"></form></del>
        1. <th id="afajh"><progress id="afajh"></progress></th>
          <b id="afajh"><abbr id="afajh"></abbr></b>
          <th id="afajh"><progress id="afajh"></progress></th>

          發(fā)現(xiàn)一款數(shù)據(jù)可視化手繪神器!

          共 25308字,需瀏覽 51分鐘

           ·

          2021-03-22 13:02

          來源:

          https://github.com/chenjiandongx/cutecharts

          今天,給大家介紹一個(gè)很酷的 Python 手繪風(fēng)格可視化神包:cutecharts。

          和 Matplotlib 、pyecharts 等常見的圖表不同,使用這個(gè)包可以生成下面這種看起來像手繪的各種圖表,在一些場景下使用效果可能會更好。

          GitHub 地址:

          https://github.com/chenjiandongx/cutecharts

          怎么畫出這些圖表呢,很簡單,一行命令先安裝好該庫:

          pip install cutecharts

          也可以使用源碼安裝的方式:

          $ git clone https://github.com/chenjiandongx/cutecharts.git
          $ cd cutecharts
          $ pip install -r requirements.txt
          $ python setup.py install

          下面就介紹下每個(gè)圖表如何繪制。

          首先是一些圖表共通的參數(shù):

          Commons

          不同圖表有著部分相同的方法。

          __init__

          Params                                          Desc
          ------                                          ----
          title: Optional[str] = None                     圖表標(biāo)題
          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 渲染時(shí)使用。

          Bar(柱狀圖)

          cutecharts.charts.Bar

          API

          cutecharts.charts.Bar.set_options

          Params                                          Desc
          ------                                          ----
          labels: Iterable                                X 坐標(biāo)軸標(biāo)簽數(shù)據(jù)
          x_label: str = ""                               X 坐標(biāo)軸名稱
          y_label: str = ""                               Y 坐標(biāo)軸名稱
          y_tick_count: int = 3                           Y 軸刻度分割段數(shù)
          colors: Optional[Iterable] = None               label 顏色數(shù)組
          font_family: Optional[str] = None               CSS font-family

          cutecharts.charts.Bar.add_series

          Params                                          Desc
          ------                                          ----
          name: str                                       series 名稱
          data: Iterable                                  series 數(shù)據(jù)列表

          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()


          img


          Bar-調(diào)整顏色

          def bar_tickcount_colors():
              chart = Bar("Bar-調(diào)整顏色")
              chart.set_options(labels=Faker.choose(), y_tick_count=10, colors=Faker.colors)
              chart.add_series("series-A", Faker.values())
              return chart


          img


          Line(折線圖)

          cutecharts.charts.Line

          API

          cutecharts.charts.Line.set_options

          Params                                          Desc
          ------                                          ----
          labels: Iterable                                X 坐標(biāo)軸標(biāo)簽數(shù)據(jù)
          x_label: str = ""                               X 坐標(biāo)軸名稱
          y_label: str = ""                               Y 坐標(biāo)軸名稱
          y_tick_count: int = 3                           Y 軸刻度分割段數(shù)
          legend_pos: str = "upLeft"                      圖例位置,有 "upLeft""upRight""downLeft""downRight" 可選
          colors: Optional[Iterable] = None               label 顏色數(shù)組
          font_family: Optional[str] = None               CSS font-family

          cutecharts.charts.Line.add_series

          Params                                          Desc
          ------                                          ----
          name: str                                       series 名稱
          data: Iterable                                  series 數(shù)據(jù)列表

          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()


          img


          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


          img


          Line-調(diào)整顏色

          def line_tickcount_colors():
              chart = Line("Line-調(diào)整顏色")
              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


          img


          Pie(餅圖)

          cutecharts.charts.Pie

          API

          cutecharts.charts.Pie.set_options

          Params                                          Desc
          ------                                          ----
          labels: Iterable                                數(shù)據(jù)標(biāo)簽列表
          inner_radius: float = 0.5                       Pie 圖半徑
          legend_pos: str = "upLeft"                      圖例位置,有 "upLeft""upRight""downLeft""downRight" 可選
          colors: Optional[Iterable] = None               label 顏色數(shù)組
          font_family: Optional[str] = None               CSS font-family

          cutecharts.charts.Pie.add_series

          Params                                          Desc
          ------                                       ----
          data: Iterable                                  series 數(shù)據(jù)列表

          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()


          img


          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


          img


          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


          img


          Radar(雷達(dá)圖)

          cutecharts.charts.Radar

          API

          cutecharts.charts.Radar.set_options

          Params                                          Desc
          ------                                          ----
          labels: Iterable                                數(shù)據(jù)標(biāo)簽列表
          is_show_label: bool = True                      是否顯示標(biāo)簽
          is_show_legend: bool = True                     是否顯示圖例
          tick_count: int = 3                             坐標(biāo)系分割刻度
          legend_pos: str = "upLeft"                      圖例位置,有 "upLeft""upRight""downLeft""downRight" 可選
          colors: Optional[Iterable] = None               label 顏色數(shù)組
          font_family: Optional[str] = None               CSS font-family

          cutecharts.charts.Radar.add_series

          Params                                          Desc
          ------                                          ----
          name: str                                       series 名稱
          data: Iterable                                  series 數(shù)據(jù)列表

          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-顏色調(diào)整

          def radar_legend_colors():
              chart = Radar("Radar-顏色調(diào)整")
              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




          Scatter(散點(diǎn)圖)

          cutecharts.charts.Scatter

          API

          cutecharts.charts.Scatter.set_options

          Params                                          Desc
          ------                                          ----
          x_label: str = ""                               X 坐標(biāo)軸名稱
          y_label: str = ""                               Y 坐標(biāo)軸名稱
          x_tick_count: int = 3                           X 軸刻度分割段數(shù)
          y_tick_count: int = 3                           Y 軸刻度分割段數(shù)
          is_show_line: bool = False                      是否將散點(diǎn)連成線
          dot_size: int = 1                               散點(diǎn)大小
          time_format: Optional[str] = None               日期格式
          legend_pos: str = "upLeft"                      圖例位置,有 "upLeft""upRight""downLeft""downRight" 可選
          colors: Optional[Iterable] = None               label 顏色數(shù)組
          font_family: Optional[str] = None               CSS font-family

          cutecharts.charts.Scatter.add_series

          Params                                          Desc
          ------                                          ----
          name: str                                       series 名稱
          data: Iterable                                  series 數(shù)據(jù)列表,[(x1, y1), (x2, y2)]

          Demo

          Scatter-基本示例

          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


          scatter_base().render()


          img


          Scatter-散點(diǎn)大小

          def scatter_dotsize_tickcount():
              chart = Scatter("Scatter-散點(diǎn)大小")
              chart.set_options(dot_size=2, y_tick_count=8)
              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


          img

          Scatter-散點(diǎn)連成線

          def scatter_show_line():
              chart = Scatter("Scatter-散點(diǎn)連成線")
              chart.set_options(y_tick_count=8, is_show_line=True)
              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


          img
          瀏覽 49
          點(diǎn)贊
          評論
          收藏
          分享

          手機(jī)掃一掃分享

          分享
          舉報(bào)
          評論
          圖片
          表情
          推薦
          點(diǎn)贊
          評論
          收藏
          分享

          手機(jī)掃一掃分享

          分享
          舉報(bào)
          <kbd id="afajh"><form id="afajh"></form></kbd>
          <strong id="afajh"><dl id="afajh"></dl></strong>
            <del id="afajh"><form id="afajh"></form></del>
                1. <th id="afajh"><progress id="afajh"></progress></th>
                  <b id="afajh"><abbr id="afajh"></abbr></b>
                  <th id="afajh"><progress id="afajh"></progress></th>
                  国产极品艳情生活视频在线播放 | 中文字幕亚洲精品 | 国产小穴 | 请立即播放黑人大黑吊日白人小嫩逼视频 | 少妇厨房愉情理伦BD在线观看 |