日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程语言 > php >内容正文

php

代码写好了怎么在php里裕兴_8 行代码用Python画一个中国地图

發布時間:2025/3/12 php 26 豆豆
生活随笔 收集整理的這篇文章主要介紹了 代码写好了怎么在php里裕兴_8 行代码用Python画一个中国地图 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

源?/ SegmentFault

Jupyter

首先,第一神器是Jupyter。如果你是第一次使用,可能搞不清楚它的開發者做這么個鬼東西出來干什么,說它是博客系統也不像,說它是web服務器也不像,但它就是有用。

因為我們傳統的web開發首先想的就是面向公眾,你做一個服務器就是要服務成千上萬瀏覽器的。

當然Jupyter也可以服務眾多瀏覽器,但它更多的還是方便研究人員,對研究人員來說簡直是太方便了,你把代碼像寫文章一樣直接寫在輸入框里,然后在本頁面直接就看到了這個代碼的結果,隨時修改,隨時展現,文碼混排,是Markdown的一個增強版,畢竟Markdown還只能顯示文字,最多再加上一些圖片,而Jupyter是可以直接運行Python代碼的。

當然,也有些人試圖在Jupyter里運行PHP或Java代碼,但顯然成不了氣候。因為Python這個語言天生就是腳本語言,可能將來唯一有希望往里移植的就是Javascript,這貨也是一個腳本語言。腳本語言的好處就是不用編譯,一行一個結果。

縱觀計算機語言發展歷史,就是一個從繁到簡的過程,C語言需要編譯+鏈接才能運行,Java只要javac一下,把編譯和鏈接合二為一,PHP更簡單,直接運行就行了,連編譯都省了。

但是還不夠直接,因為還要編寫一個.php文件存盤,然后才能運行,到了Python以及其它腳本語言這里,可以直接在殼里運行,但最大的問題是運行可以運行,無法保存,要保存就又要跟傳統方式一樣,找個編輯器來,或者vi,存成文件以后才可以運行。

Jupyter最大的優點就是:它本身還是一個外殼環境,可以運行腳本,但同時也幫你自動把這些腳本代碼保存了下來,不但保存腳本代碼,并且你插在腳本代碼當中的所有注釋不是普通注釋,而是各種格式化的Markdown都一并幫你保存下來,并且可以隨時修改。

所以它兼具了腳本外殼和文件管理系統的優點,從此你開發Python代碼再也不用先在IDE里寫好代碼,然后再到終端里去運行,而直接在一個web頁面上就全部搞定了。

Java有這樣的工具嗎?PHP有這樣的工具嗎?沒有,所以我們必須選擇Python。

Pandas

第二神器是Pandas。如果我讓你讀取一個csv文件,然后求每一列數據的平均值,最大值,最小值,方差,用Java或PHP怎么做?

你首先要fopen一個文件,然后一行一行讀進來,再給它整個數據結構,然后弄個循環計算,最后你可能還要fclose這個文件。

總之代碼一坨,麻煩死。而Python語言因為有Pandas這個神器,一行代碼搞定:

df = pd.read_csv( a.csv )

行了,從此以后,df就是這個DataFrame,它本身就是一個強大的數據結構,也可以把它理解成mysql數據庫中的一張表吧,各種增刪改查,求總和,求平均都是一行代碼的事情。

所以有這樣強大的庫,研究人員有什么理由選擇Java?

scikit-learn

第三神器scikit-learn,一般縮寫為sclearn,各種機器學習算法,基本上只要你能想得到的,線性回歸,邏輯回歸,SVM,隨機森林,最近鄰居等等等等,各種算法全部在這里面(http://scikit-learn.org/stable/user_guide.html)。

簡而言之,只有你想不到,沒有它做不到。

所以這就是為什么玩機器學習必選Python的原因,你給我找一個Java或者PHP有這樣多種算法的庫來?

matplotlib

第四神器是matplotlib。如果我讓你根據上面csv文件里的信息,畫一個圖,用Java該怎么做?

你當然會去找第三方插件庫,然后又是一通折騰,終于把圖做出來,然后編譯,然后運行。

如果我要改配色呢?如果我要求畫地圖呢?如果要畫熱力圖呢?那個麻煩就不是一星半點,而對于matplotlib來說,簡直就是小菜一碟。

簡單的直方圖就不說了,下面重點介紹如何用matplotlib配合Basemap畫一個中國地圖。

安裝Basemap

先安裝相應的組件。我假定你已經都安裝好了Python以及Jupyter等等。如果沒有安裝的話,就去嘗試一下brew install python3和brew install jupyter吧,網上有很多教程。

然后你需要用pip3 install很多我們下面可能需要用到的庫。但是因為我們要用一個叫做Basemap的庫,而這個庫沒有辦法用簡單的pip3 install安裝,所以稍多兩個步驟:

brew install geos
pip3 install https://github.com/matplotlib/basemap/archive/v1.1.0.tar.gz

開始畫圖

啟動Jupyter之后,我們還是本著從最簡單的代碼開始。先畫一個世界地圖:

import matplotlib.pyplot as pltfrom mpl_toolkits.basemap import Basemap
plt.figure(figsize=(16,8))
m = Basemap()
m.drawcoastlines()
plt.show()

前面兩行引入相應的庫,真正的代碼就4行,夠簡單吧。第1行甚至可以不寫,它定義了圖的大小。第2行我們創建一個地圖,第3行把海岸線畫上,第4行顯示這個地圖,就是這樣:

你用Java的4行代碼畫一個地圖出來?

然后我們開始畫上國家,又是1行代碼:

m.drawcountries(linewidth=1.5)

就變成了這樣:

用Java可能嗎?用PHP可能嗎?

如果我們想顯示中國地圖,只需要在創建Basemap時指定一下經緯度就行了:

m = Basemap(llcrnrlon=73, llcrnrlat=18, urcrnrlon=135, urcrnrlat=53)

然后就得到了中國地圖:

看上去有點變形,這是因為我們沒有添加任何投影的原因,Basemap提供24種不同的投影方式,你可以自己一個個試一下,比較常用的是蘭勃特投影,我們添加一下:

m = Basemap(llcrnrlon=77, llcrnrlat=14, urcrnrlon=140, urcrnrlat=51, projection= lcc , lat_1=33, lat_2=45, lon_0=100)

這次終于看上去比較正常了:

我們想加上省的邊界怎么辦呢?Basemap缺省的包里沒有中國的省區,只有美國的州,畢竟是美國人做的嘛。

不過好在世界很大,有專門的國際組織干這事,在這里(https://gadm.org/download_country_v3.html)你可以下載全世界任何一個國家的行政區劃Shape文件,然后我們給它加上:

m.readshapefile( CHN_adm_shp/CHN_adm1 , states , drawbounds=True)

然后就得到了下圖:

再往后,你還可以往圖上改顏色啦,寫數字啦,這些就留待你研究吧。總之,我想說的是,用Python畫地圖真的超容易。

最后再為Java和PHP美言幾句:大家分工不同,Java和PHP雖然做這樣的數字研究不是很方便,但還是非常適合web開發的,而Python在這方面并不適合。

所以通常的做法是:首先用Python驗證算法,經過一系列復雜的計算,把算法確定下來之后,當要應用到web上的時候,再用Java或者PHP把最終形成的結論重寫一遍,這樣就能充分利用各種語言的優勢。

補充:basemap這個第三方庫可能不太好安裝,Windows下可以在? https://sourceforge.net/projects/matplotlib/files/matplotlib-toolkits/basemap-1.0.7/? 下載EXE文件安裝。

本文轉載自「SegmentFault」,作者「張京」,點擊「原文鏈接」即可關注

—————————————

往期精彩:

  • 人民日報終發文:國航“避重就輕、不作為、護犢子、體驗差、聽不進批評”

  • 華為延期,三星下架,講講折疊屏為什么這么難

  • 李彥宏被潑水,是“多數人的暴力”還是“群眾的宣泄”

總結

以上是生活随笔為你收集整理的代码写好了怎么在php里裕兴_8 行代码用Python画一个中国地图的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。

主站蜘蛛池模板: 捆绑japanhdxxxxvideos | 久久二区三区 | 天堂精品一区 | www.日本com | 日韩一区二区三免费高清在线观看 | 国产在线观看a | 动漫3d精品一区二区三区乱码 | 四虎免费影视 | 综合网激情| 美女网站一区 | 日韩在线二区 | 调教丰满的已婚少妇在线观看 | 欲色视频 | 国产免费一区二区视频 | 成人精品久久久午夜福利 | 亚洲资源站| 久久久久逼 | 精品无人国产偷自产在线 | 成人深夜福利在线观看 | 亚洲综合久久av一区二区三区 | 三级精品在线观看 | 超碰在线观看免费版 | 国产精品久久视频 | 日本欧美久久久久免费播放网 | 国产精品入口夜色视频大尺度 | 成人免费毛片日本片视频 | 在线视频黄 | 精品午夜一区二区三区 | 逼特逼视频在线观看 | 黑森林福利视频导航 | 国产精品视频一区在线观看 | 天天综合射 | 免费三级网 | 久久婷婷影视 | 天天干,夜夜操 | 精品久久久久久中文字幕 | 自拍第一页 | 秋霞午夜鲁丝一区二区 | 亚洲第一区在线播放 | 牛牛在线视频 | 欧美性爱视频久久 | av一道本 | 国产精品国产一区二区三区四区 | 国产理论视频在线观看 | 超碰中文字幕在线 | www日韩欧美| 91免费视频网站 | 深夜视频在线 | 欧美一区视频 | 国产日韩高清在线 | 日本成人社区 | 外国av在线| 水牛影视av一区二区免费 | 成人高潮片免费 | 深爱激情丁香 | 一级在线免费观看 | 天堂国产| 国产精品扒开腿做爽爽爽视频 | 欧美深夜在线 | av资源库| 丰满大乳奶做爰ⅹxx视频 | 欧美性久久 | 一本一道无码中文字幕精品热 | 中文字幕在线观 | 欧美精品黄色片 | 久久极品| 欧美日韩高清一区二区 | h视频在线免费观看 | 精品久久久久一区二区 | 91嫩草在线 | 爱色av网站| 草久久| 国产极品久久 | 免费日本黄色片 | 精品一性一色一乱农村 | 欧洲性生活片 | 亚洲欧美天堂网 | 激情片 | 一本色道久久综合无码人妻 | 激情视频一区二区 | 国产丝袜一区二区 | 最新中文字幕av | www.蜜桃av| 日韩精品在线电影 | 一级a性色生活片久久无 | 日韩www.| 激情综合色| 99国产精品无码 | 美女主播福利视频 | 亚洲宅男天堂 | 秋霞精品 | 无码人妻aⅴ一区二区三区 国产高清一区二区三区四区 | 午夜h | 久久久天天 | 青春草免费视频 | 精品在线你懂的 | www.操com| 欧美爱爱一区二区 | 太久av|