Warning: error_log(/data/www/wwwroot/hmttv.cn/caches/error_log.php): failed to open stream: Permission denied in /data/www/wwwroot/hmttv.cn/phpcms/libs/functions/global.func.php on line 537 Warning: error_log(/data/www/wwwroot/hmttv.cn/caches/error_log.php): failed to open stream: Permission denied in /data/www/wwwroot/hmttv.cn/phpcms/libs/functions/global.func.php on line 537
GitHub精選》是我們分享Github中優質項目的欄目,包括技術、學習、實用與各種有趣的內容。本期推薦的是基于python一個的2D、3D圖表庫——pyecharts。
Pyecharts是一個由百度團隊基于Python和html研發的圖表庫,包含基本的柱狀條形圖、折線面積圖、漏斗圖、旭日圖,以及3D的柱狀圖、折線圖、散點圖、地圖等等,囊括了 30+ 種常見圖表。
特點:
示例:
柱狀圖
熱力圖
旭日圖
3D柱狀圖
3D折線圖
三維地圖①
三維地圖②
快速上手:
pip安裝
$ pip(3) install pyecharts
源碼安裝
$ git clone https://github.com/pyecharts/pyecharts.git
$ cd pyecharts
$ pip install -r requirements.txt
$ python setup.py install
# 或者執行 python install.py
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 Bar
bar = (
Bar()
.add_xaxis(["襯衫", "羊毛衫", "雪紡衫", "褲子", "高跟鞋", "襪子"])
.add_yaxis("商家A", [5, 20, 36, 10, 75, 90])
)
bar.render()
from pyecharts.charts import Bar
from pyecharts.render import make_snapshot
# 使用 snapshot-selenium 渲染圖片
from snapshot_selenium import snapshot
bar = (
Bar()
.add_xaxis(["襯衫", "羊毛衫", "雪紡衫", "褲子", "高跟鞋", "襪子"])
.add_yaxis("商家A", [5, 20, 36, 10, 75, 90])
)
make_snapshot(snapshot, bar.render(), "bar.png")
from pyecharts.charts import Bar
from pyecharts import options as opts
# 內置主題類型可查看 pyecharts.globals.ThemeType
from pyecharts.globals import ThemeType
bar = (
Bar(init_opts=opts.InitOpts(theme=ThemeType.LIGHT))
.add_xaxis(["襯衫", "羊毛衫", "雪紡衫", "褲子", "高跟鞋", "襪子"])
.add_yaxis("商家A", [5, 20, 36, 10, 75, 90])
.add_yaxis("商家B", [15, 6, 45, 20, 35, 66])
.set_global_opts(title_opts=opts.TitleOpts(title="主標題", subtitle="副標題"))
)
以上就是pyecharts的簡單使用,如果你想實現更多炫酷的樣式,pyecharts同樣也提供了多種內置主題,感興趣的同學可以了解一下。
GitHub:https://github.com/pyecharts/pyecharts
往期推薦:
機器學習入門教程tutorials
零代碼搭建多種主題的個人博客
程序員通用簡歷模板ResumeSample
互聯網公司常用框架和中間件源碼解析
開源精選》是我們分享Github、Gitee等開源社區中優質項目的欄目,包括技術、學習、實用與各種有趣的內容。本期推薦的是一個基于 JavaScript 的開源可視化圖表庫——Apache ECharts。
ECharts是一個使用 JavaScript 實現的開源可視化庫,可以流暢地運行在 PC 和移動設備上,兼容當前絕大部分瀏覽器(IE9/10/11,Chrome,Firefox,Safari等),底層依賴矢量圖形庫 ZRender,提供直觀,交互豐富,可高度個性化定制的數據可視化圖表。
豐富的圖表類型:提供開箱即用的 20 多種圖表和十幾種組件,并且支持各種圖表以及組件的任意組合。
強勁的渲染引擎:Canvas、SVG 雙引擎一鍵切換,增量渲染、流加載等技術實現千萬級數據的流暢交互。
專業的數據分析:通過數據集管理數據,支持數據過濾、聚類、回歸,幫助實現同一份數據的多維度分析。
優雅的可視化設計:默認設計遵從可視化原則,支持響應式設計,并且提供了靈活的配置項方便開發者定制。
健康的開源社區:活躍的社區用戶保證了項目的健康發展,也貢獻了豐富的第三方插件滿足不同場景的需求。
友好的無障礙訪問:智能生成的圖表描述和貼花圖案,幫助視力障礙人士了解圖表內容,讀懂圖表背后的故事。
移動端優化:ECharts 針對移動端交互做了細致的優化,例如移動端小屏上適于用手指在坐標系中進行縮放、平移。
1 獲取 Apache ECharts
Apache ECharts 支持多種下載方式,你可以根據項目的實際情況選擇以下任意一種方式安裝。
apache/echarts 項目的 release 頁面可以找到各個版本的鏈接。點擊下載頁面下方 Assets 中的 Source code,解壓后 dist 目錄下的 echarts.js 即為包含完整 ECharts 功能的文件。
https://github.com/apache/echarts/releases
npm install echarts --save
在 https://www.jsdelivr.com/package/npm/echarts 選擇 dist/echarts.js,點擊并保存為 echarts.js 文件。
2 引入 Apache ECharts
在剛才保存 echarts.js 的目錄新建一個 index.html 文件,內容如下:
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8" />
<!-- 引入剛剛下載的 ECharts 文件 -->
<script src="echarts.js"></script>
</head>
</html>
打開這個 index.html,你會看到一片空白。但是不要擔心,打開控制臺確認沒有報錯信息,就可以進行下一步。
3 繪制一個簡單的圖表
在繪圖前我們需要為 ECharts 準備一個定義了高寬的 DOM 容器。在剛才的例子 </head> 之后,添加:
<body>
<!-- 為 ECharts 準備一個定義了寬高的 DOM -->
<div id="main" style="width: 600px;height:400px;"></div>
</body>
然后就可以通過 echarts.init 方法初始化一個 echarts 實例并通過 setOption 方法生成一個簡單的柱狀圖,下面是完整代碼:
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8" />
<title>ECharts</title>
<!-- 引入剛剛下載的 ECharts 文件 -->
<script src="echarts.js"></script>
</head>
<body>
<!-- 為 ECharts 準備一個定義了寬高的 DOM -->
<div id="main" style="width: 600px;height:400px;"></div>
<script type="text/javascript">
// 基于準備好的dom,初始化echarts實例
var myChart = echarts.init(document.getElementById('main'));
// 指定圖表的配置項和數據
var option = {
title: {
text: 'ECharts 入門示例'
},
tooltip: {},
legend: {
data: ['銷量']
},
xAxis: {
data: ['襯衫', '羊毛衫', '雪紡衫', '褲子', '高跟鞋', '襪子']
},
yAxis: {},
series: [
{
name: '銷量',
type: 'bar',
data: [5, 20, 36, 10, 10, 20]
}
]
};
// 使用剛指定的配置項和數據顯示圖表。
myChart.setOption(option);
</script>
</body>
</html>
這樣你的第一個圖表就誕生了!
折線圖
折線圖堆疊
堆疊面積圖
漸變堆疊面積圖
北京 AQI 可視化
柱狀圖
堆疊柱狀圖
多 Y 軸
堆疊條形圖
餅圖
南丁格爾玫瑰圖
嵌套環形圖
地理坐標/地圖
地圖柱狀圖變形動畫
關系圖
人物關系圖(環形布局)
NPM 依賴關系圖
矩形樹圖
磁盤占用
旭日圖
Drink Flavors
平行坐標系
AQI 分布(平行坐標)
營養結構(平行坐標)
散點矩陣和平行坐標
—END—
組件預覽地址:https://echarts.apache.org/examples/zh/index.html
開源協議:Apache2.0
開源地址:https://github.com/apache/echarts
atplotlib 是一個 Python 的 2D、3D繪圖庫,它以各種硬拷貝格式和跨平臺的交互式環境生成出版質量級別的圖形 。通過 Matplotlib,開發者可以僅需要幾行代碼,便可以生成繪圖,直方圖,功率譜,條形圖,錯誤圖,散點圖等。matplotlib繪圖是很重要的,比如股票的走勢曲線、醫學上的一些心腦波圖等都用應用。
下面開始講解,今天講解matplotlib可視圖 3D圖表,沒看過 2D可視圖圖表的朋友,請看筆者的這篇文章,鏈接是:
python可視圖matplotlib 2D/3D圖表,讓你快速掌握制作常用的圖表
實現功能的代碼如下:
運行結果截圖:
實現功能的代碼如下:
運行結果截圖:
實現功能的代碼如下:
運行結果截圖:
字體樣式:
其他屬性:
今天的內容就到此結束了,想要精通matplotlib 2D/3D圖表的話,筆者給你指一個matplotlib的官方鏈接,里面的內容有很多2D/3D圖表的例子代碼,如下圖所示:
需要深入學習的朋友,可以去學習一下,matplotlib官方鏈接是:https://matplotlib.org/gallery.html
好的,今天就到這里了,喜歡的朋友關注轉發一波喔,歡迎關注【python是一個時代】,更多精彩內容等著你,希望今天的內容對讀者有所幫助。
*請認真填寫需求信息,我們會在24小時內與您取得聯系。