在线观看www成人影院-在线观看www日本免费网站-在线观看www视频-在线观看操-欧美18在线-欧美1级

0
  • 聊天消息
  • 系統消息
  • 評論與回復
登錄后你可以
  • 下載海量資料
  • 學習在線課程
  • 觀看技術視頻
  • 寫文章/發帖/加入社區
會員中心
創作中心

完善資料讓更多小伙伴認識你,還能領取20積分哦,立即完善>

3天內不再提示

Altair:一個漂亮易用的數據可視化庫

科技綠洲 ? 來源:Python實用寶典 ? 作者:Python實用寶典 ? 2023-10-21 10:43 ? 次閱讀

Altair 是一個基于Jupyter Notebook的強大可視化庫。它提供了強大而簡潔的可視化語法,使我們能夠快速構建各種統計可視化圖表。

通過下面10行代碼,你就能創建一個可交互的散點圖:

import altair as alt

from vega_datasets import data
cars = data.cars()

alt.Chart(cars).mark_point().encode(
    x='Horsepower',
    y='Miles_per_Gallon',
    color='Origin',
).interactive()

圖片

1.準備

開始之前,你要確保Pythonpip已經成功安裝在電腦上,如果沒有,可以訪問這篇文章:超詳細Python安裝指南 進行安裝。

**(可選1) **如果你用Python的目的是數據分析,可以直接安裝Anaconda:Python數據分析與挖掘好幫手—Anaconda,它內置了Python和pip.

**(可選2) **此外,推薦大家用VSCode編輯器,它有許多的優點:Python 編程的最好搭檔—VSCode 詳細指南

請選擇以下任一種方式輸入命令安裝依賴

  1. Windows 環境 打開 Cmd (開始-運行-CMD)。
  2. MacOS 環境 打開 Terminal (command+空格輸入Terminal)。
  3. 如果你用的是 VSCode編輯器 或 Pycharm,可以直接使用界面下方的Terminal.
pip install altair vega_datasets

2.基本使用

Altair 中的數據是圍繞 Pandas Dataframe 構建的。

我們首先導入 Pandas 并創建一個簡單的 DataFrame 以進行可視化,a 列中有一個分類變量,b 列有一個數值變量:

import pandas as pd
data = pd.DataFrame({'a': list('CCCDDDEEE'),
                     'b': [2, 7, 4, 1, 2, 6, 8, 4, 7]})

Altair 中的基本對象是Chart,它將上述的數據作為單個參數

import altair as alt
chart = alt.Chart(data)

到目前為止,我們已經定義了 Chart 對象,但是我們還沒有告訴圖表對數據任何事情。接下來會出現。

有了這個圖表對象,我們現在可以指定我們希望如何可視化數據,比如作為點:

alt.Chart(data).mark_point()

然后對數據進行編碼,比如指定 a 列為x,b列為y:

alt.Chart(data).mark_point().encode(
    x='a', y='b'
)

效果如下:

圖片

如果你希望聚合求得某列得平均值,你還可以這么做:

alt.Chart(data).mark_point().encode(
    x='a',
    y='average(b)'
)

圖片

如果你希望使用柱狀圖,只需要把mark_point改為mark_bar:

alt.Chart(data).mark_bar().encode(
    x='a',
    y='average(b)'
)

圖片

還可以獲得水平柱狀圖,我們只需要把x和y對調一下:

alt.Chart(data).mark_bar().encode(
    y='a',
    x='average(b)'
)

除了點狀圖和柱狀圖,Altair 還支持幾十種圖表類型:

圖片

圖片

圖片

圖片

更多的圖表類型請在官網查看:

https://altair-viz.github.io/gallery/index.html

3.高級使用

你可以給圖表自定義你喜歡的顏色和對應的橫坐標縱坐標標題:

alt.Chart(data).mark_bar(color='firebrick').encode(
    alt.Y('a', title='category'),
    alt.X('average(b)', title='avg(b) by category')
)

圖片

你還可以將圖表保存為HTML:

chart = alt.Chart(data).mark_bar().encode(
    x='a',
    y='average(b)',
)
chart.save('chart.html')

如果你希望能夠通過區間選擇數據點并計數,你可以這么做:

import altair as alt
from vega_datasets import data

source = data.cars()

brush = alt.selection(type='interval')

points = alt.Chart(source).mark_point().encode(
    x='Horsepower',
    y='Miles_per_Gallon',
    color=alt.condition(brush, 'Origin', alt.value('lightgray'))
).add_selection(
    brush
)

bars = alt.Chart(source).mark_bar().encode(
    y='Origin',
    color='Origin',
    x='count(Origin)'
).transform_filter(
    brush
)

points & bars

圖片

跟牛逼的是,Altair還可以做多圖表聯動:

# 公眾號:Python實用寶典 整合
import altair as alt
from vega_datasets import data

cars = data.cars.url
brush = alt.selection_interval()

chart = alt.Chart(cars).mark_point().encode(
    y='Horsepower:Q',
    color=alt.condition(brush, 'Origin:N', alt.value('lightgray'))
).properties(
    width=250,
    height=250
).add_selection(
    brush
)

chart.encode(x='Acceleration:Q') | chart.encode(x='Miles_per_Gallon:Q')

左邊圈起來的 Acceleration 數據點,右邊會對應顯示其 Miles_per_Gallon 數據點:

圖片

除了這些,Altair還有更多的交互功能,比如選擇框拖動、比例綁定、自動響應、表達式選擇等等。

聲明:本文內容及配圖由入駐作者撰寫或者入駐合作網站授權轉載。文章觀點僅代表作者本人,不代表電子發燒友網立場。文章及其配圖僅供工程師學習之用,如有內容侵權或者其他違規問題,請聯系本站處理。 舉報投訴
  • 數據分析
    +關注

    關注

    2

    文章

    1461

    瀏覽量

    34166
  • python
    +關注

    關注

    56

    文章

    4807

    瀏覽量

    85040
  • Altair
    +關注

    關注

    0

    文章

    18

    瀏覽量

    10022
  • 數據可視化
    +關注

    關注

    0

    文章

    471

    瀏覽量

    10365
收藏 人收藏

    評論

    相關推薦

    七款經久不衰的數據可視化工具!

    工具 · D3.js:D3.js 是基于 JavaScript 的數據可視化,允許開發者創建豐富的交互式圖表。它具有極大的靈活性,但
    發表于 01-19 15:24

    可視化MES系統軟件

    困難的問題,提高系統的構件速度,降低構件成本。所以本系統采用SOA 架構。采用C#,.NET 開發,企業數據庫采用ORACLE數據庫管理,利用GDI+、OWC等繪圖工具和Dundas數據可視化
    發表于 11-30 19:55

    個數據可視化項目

    2017年十大最佳數據可視化項目
    發表于 08-22 09:35

    python數據可視化的方法和代碼

    Python數據可視化匯總
    發表于 10-14 14:59

    Python數據可視化專家的七秘密

    分享 Python數據可視化專家的七秘密
    發表于 05-15 06:43

    15玩轉數據可視化的技巧

    高手總結的15技巧,讓你輕松玩轉數據可視化
    發表于 05-22 09:59

    Python數據可視化

    Python數據可視化:網易云音樂歌單
    發表于 07-19 08:30

    三維可視化的應用和優勢

    。  如設備出現問題,可以更加直觀的通過三維可視化運維系統發現,因為會在系統內出現數據異常,甚至可以通過設置相對的閾值來進行提醒,使得設備出現問題后能夠第時間發現,減少維修時間和開支。提升設備的工作效率
    發表于 12-02 11:52

    常見的幾種可視化介紹

    說說常見的幾種可視化、信息可視化信息可視化就是對抽象數據進行直觀視覺呈現的研究,抽象數據既包含
    發表于 07-12 07:49

    經驗分享|BI數據可視化報表布局——容器

    ,通過點擊BI數據可視化報表設計頁上方的【+】,點擊【容器】或【選項卡容器】即可應用。容器:同一個平面上放多個數據可視化圖表;選項卡容器:同
    發表于 03-15 17:10

    使用Python可視化數據,機器人開發編程

    機器學習開發,與Mail.Ru Search數據分析負責人Egor Polusmak和Mail.Ru Group數據科學家Yury Kashnitsky起探索如何使用Python可視化
    的頭像 發表于 03-15 16:56 ?9066次閱讀

    數據可視化的常用技術和并行與原位可視化方法分析

    數據可視化就是將抽象的“數據”以可見的形式表現出來,幫助人理解數據。大數據可視化相對傳統的
    的頭像 發表于 04-17 16:51 ?6486次閱讀

    Charts.css是用于數據可視化的新的開源框架

    【導語】 :Charts.css 是用于數據可視化的開源 CSS 框架,幫助用戶理解數據,幫助開發人員使用簡單的 CSS 類將數據轉換為漂亮
    的頭像 發表于 04-13 10:48 ?2012次閱讀

    使用Python來收集、處理和可視化人口數據

    分析和可視化: pandas:提供高性能、易用數據結構和數據分析工具的
    的頭像 發表于 06-21 17:08 ?1487次閱讀
    使用Python來收集、處理和<b class='flag-5'>可視化</b>人口<b class='flag-5'>數據</b>

    非常棒的可視化:PyG2Plot

    給大家推薦的這個開源項目是非常棒的可視化 -- PyG2Plot 。 PyG2Plot 可視化 這個Python
    的頭像 發表于 10-21 11:32 ?1312次閱讀
    <b class='flag-5'>一</b><b class='flag-5'>個</b>非常棒的<b class='flag-5'>可視化</b><b class='flag-5'>庫</b>:PyG2Plot
    主站蜘蛛池模板: aaaaaa级特色特黄的毛片 | 欧美一区高清 | 国产成人精品1024在线 | 欧美不卡视频在线观看 | ww7788色淫网站女女免费 | 男女交性视频播放视频视频 | 国产日韩精品一区二区三区 | 国产亚洲精品久久午夜 | 奇米影视777狠狠狠888不卡 | 国产精品www视频免费看 | 欧美综合影院 | www.99色| 亚洲精品播放 | 亚洲视频一二 | 日韩免费视频一区 | 天天干天天射天天操 | 一卡二卡≡卡四卡亚洲高清 | 国产四虎精品 | 国产人成精品免费视频 | 美女在线看永久免费网址 | 1000部啪啪未满十八勿入 | 精品乱人伦一区二区三区 | 一本到午夜92版免费福利 | 天堂在线视频 | 天天操夜夜操夜夜操 | 日本大片在线看 | 三级黄色在线观看 | 天天躁夜夜躁狠狠躁2018a | 天天综合色天天综合色sb | 玖玖草在线观看 | 三级视频网站在线观看 | 美日韩中文字幕 | 欲香欲色天天综合和网 | 亚洲啊v | 视频一二三区 | 亚洲视频在线视频 | 丝袜紧身裙国产在线播放 | 亚洲精品福利你懂 | 免费看啪啪的网站 | 欧美一级特黄高清免费 | 伊人小婷婷色香综合缴缴情 |