Pyecharts 에서 Geo 함수 가 자주 사용 하 는 매개 변수의 용법 설명
pyecharts 는 Echarts 도 표를 만 드 는 데 사용 되 는 라 이브 러 리 입 니 다.Echarts 로 생 성 된 그림 의 시각 화 효과 가 좋 습 니 다.pyecharts 라 이브 러 리 는 Python 과 연결 하여 Python 에서 데이터 생 성 그림 을 직접 사용 할 수 있 습 니 다.
최신 Pyecharts 라 이브 러 리 버 전 은 v1 이 며,이전 버 전 v0.5.X 와 호 환 되 지 않 으 며,v0.5.X 버 전도 더 이상 유지 되 지 않 습 니 다.신 구 버 전의 Geo 는 비교적 큰 변동 이 있 는데 본 편 은 모두 구 버 전 0.5.11 을 바탕 으로 한다.
2.Pyecharts 설치
pyecharts 의 설치 설명 은 매우 간단 하고 많은 사내 들 이 과정 을 썼 습 니 다.이 편 은 군말 하지 않 고 주로 지 정 된 버 전의 문 제 를 말 합 니 다.
pyecharts 설치
Pyecharts v1 버 전의 설 치 는 pip install pyecharts-U 를 사용 할 수 있 습 니 다.
Pyecharts v 0.5.X 버 전의 설 치 는 pip install pyecharts==0.5.11 을 사용 할 수 있 습 니 다.
해당 맵 설치 확장
pip install echarts-countries-pypkg
pip install echarts-china-provinces-pypkg
pip install echarts-china-cities-pypkg
pip install echarts-china-counties-pypkg
pip install echarts-china-misc-pypkg
글로벌 국가 지도:echarts-countries-pypkg(1.9MB)중국 성급 지도:echarts-china-provinces-pypkg(730 KB)
중국 시 급 지도:echarts-china-cities-pypkg(3.8MB)
중국 구 현 지도:echarts-china-countes-pypkg
중국 대구 지도:echarts-china-misc-pypkg(예 를 들 어 화남,화북 등)
3.Geo 상용 매개 변수 설명
1.Geo:geo=Geo()만 들 기
geo=Geo()는 지 도 를 그린 배경 이다.
Geo(title,subtitle,width,height,title_pos,title_top,title_color,subtitle_color,title_text_size,subtitle_text_size,background_color,page_title,renderer,is_animation)
각 매개 변 수 는 다음 과 같다.실제 사용 과정 에서 우리 가 자주 사용 하 는 매개 변 수 는 title,width,height,background 와 같 습 니 다.color,이 몇 가지 기본 만 하면 충분 합 니 다.모든 매개 변 수 는 기본 값 이 있 습 니 다.이것 은 가장 극단 적 인 상황 에서 Geo()를 직접 사용 해도 된다 는 것 을 의미 합 니 다.그러나 그 려 진 것 은 백지 일 뿐 입 니 다.
Init docstring:
:param title:
, , ""
:param subtitle:
, , ""
:param width:
, 800(px)
:param height:
, 400(px)
:param title_pos:
, 'left', 'auto', 'left', 'right',
'center' ,
:param title_top:
, 'top', 'top', 'middle', 'bottom' ,
:param title_color:
, '#000'
:param subtitle_color:
, '#aaa'
:param title_text_size:
, 18
:param subtitle_text_size:
, 12
:param background_color:
, '#fff'
:param page_title:
html <title> 。 'Echarts'
:param renderer:
, 'svg' 'canvas' , 'canvas'。
3D 'canvas'。
:param extra_html_text_label:
HTML ,(<p> )。 list,list[0] ,
list[1] ( )。 ["this is a p label", "color:red"]
:param is_animation:
, True。V0.5.9+
예 를 들 면:
from pyecharts import Geo
geo =Geo("Geo ", " ",width=500, height=500, title_pos='center',title_top=20, title_color="#2E2E2E",
subtitle_color='#aaa',title_text_size=16,subtitle_text_size=12,background_color='#EEEEE8',
page_title='Echarts',renderer='canvas',is_animation=True)
geo
2、geo.add_coordinate()좌표 점 추가
geo.add_coordinate()의 역할 은 바로 새로 추 가 된 것 입 니 다.예 를 들 어 지금 광저우 지 도 를 호출 하 는 것 입 니 다.지금 특정한 점 인'테스트 1'을 표시 하려 면 이런 점 은 반드시 add 를 사용 해 야 합 니 다.coordinate 가 추가 되 었 습 니 다.그렇지 않 으 면 오류 가 발생 합 니 다(ValueError:No coordinate is specified for 테스트 1).
geo.add_coordinate(점 이름,경도,위도),3 개의 매개 변 수 는 모두 필수 항목 입 니 다.
geo.add_coordinate('테스트 포인트 1',113.40,23.07)
3.geo.add()좌표 점 보 여주 기
geo.add()의 역할 은 위 에 불 러 온 지도 에 점 을 보 여 주 는 것 입 니 다.add 는 많은 매개 변 수 를 가지 고 있 습 니 다.가장 많이 사용 하 는 것 은 series 입 니 다.name、names、value、type、maptype、is_visualmap、visual_range、visual_text_color、symbol_size,그 중 seriesname,names,value,maptype 이 네 가 지 는 필수 항목 입 니 다.
# , tooltip ,legend 。
series_name: str,
# ( )
names:list
# ( )
value: list
# Geo , scatter, effectScatter, heatmap, lines 4
type: "scatter",
#
is_selected: True,
# ,circle,pin,rect,diamon,roundRect,arrow,triangle
symbol: circle,
#
symbol_size: 12,
# label
color: None,
# , lines
is_polyline: False,
# , (>=5k)
is_large: False,
# 。 0 1 , 。
trail_length: 0.2
# , 、 、china
maptype
# , Ture
is_random
# 。'scale' 、'move' 、'True'
is_roam: True
#
is_visualmap: True
#
visual_range
#
visual_text_color
#
geo_normal_color
# ( )
geo_emphasis_color
# , type="effectScatter"
effect_scale
#
is_label_show
#
label_text_color
# (inside,top,bottom,left,right)
label_pos: "inside"
#
border_color
예 를 들다
from pyecharts import Geo
districts=[' ', ' ', ' ',' 1']
value = [ 200, 200,300,400]
geo =Geo("Geo ", " ",width=500, height=500, title_pos='center',title_top=20, title_color="#2E2E2E",
subtitle_color='#aaa',title_text_size=16,subtitle_text_size=12,background_color='#EEEEE8',
page_title='Echarts',renderer='canvas',is_animation=True)
geo.add_coordinate(' 1',113.40,23.07)
geo.add(" 1",
districts, value,type="effectScatter",is_selected=True,symbol='circle',symbol_size=20,color=None,
maptype=' ',is_roam=True,is_visualmap=True, visual_range=[0,500],visual_text_color="#2E2E2E",
geo_normal_color="#323c48",geo_emphasis_color='#2a033d', effect_scale=3,
is_label_show=True,label_text_color="#00FF00",label_pos="inside"
)
geo.render(" 2.html")
geo
여기 서 두 가지 문제 가 아직 해결 되 지 않 았 다.첫째,israndom 매개 변수의 역할 은 True 나 False 에 영향 을 주지 않 는 것 같 습 니 다.둘째,위의 그림 과 같은 seriesname"시리즈 명 1",왼쪽 오른쪽 으로 이동 하 는 등 위 치 를 어떻게 바 꾸 는 지 모 르 겠 습 니 다.
4.geo.render()파일 저장
geo.render()는 간단 합 니 다.지 도 를 파일 로 저장 하 는 것 입 니 다.render 는 하나의 인자 만 있 습 니 다.바로 path 경로 입 니 다.
geo.render(" 2.html")
추가:Pyecharts v1 Geo 라 이브 러 리 의 업데이트 및 응용최근 에 Python 을 이용 하여 파충 류 를 하 는 과정 에서 웹 페이지 에서 기어 오 른 데 이 터 를 시각 적 으로 처리 해 야 한다.그 중에서 일부 데 이 터 는 지역 분포 에 관 한 것 이 고 지도 에 구체 적 인 매개 변수 분 포 를 표시 하면 데 이 터 를 더욱 직관 적 이 고 생동감 있 게 할 것 이다.
지도 에 표 시 된 도 구 는 Pyecharts 라 이브 러 리 에서 Geo 를 사용 합 니 다.Pycharm 에서 실 행 됩 니 다.주의해 야 할 것 은 최신 Pyecharts 라 이브 러 리 버 전 은 v1 이 고 최신 버 전 입 니 다.또한 기 존 버 전 v0.5.X 와 호 환 되 지 않 습 니 다.v0.5.X 버 전도 더 이상 유지 되 지 않 기 때문에 앞으로 최신 v1 버 전 을 최대한 활용 하 는 것 을 권장 합 니 다.본 고 는 여기 서 Geo 라 이브 러 리 의 업데이트 응용 에 대한 설명 을 할 것 이다.
Pyecharts v1 버 전의 설 치 는 pip install pyecharts-U 를 사용 할 수도 있 고 Pycharm 에 Pyecharts 를 직접 설치 할 수도 있 습 니 다.설명 문서 주 소 는https://pyecharts.org/#/zh-cn/intro입 니 다.
Pyecharts v 0.5.X 버 전의 설 치 는 pip install pyecharts==0.5.11 을 사용 할 수 있 으 며 설명 문서 의 주 소 는https://05x-docs.pyecharts.org/#/zh-cn/prepare입 니 다.
새 버 전 Pyecharts 의 지리 도표 Geo 는 비교적 큰 변화 가 있 었 다.전체적인 가장 직관 적 인 업데이트 느낌 은 새로운 라 이브 러 리 가 예전 처럼 번 거 롭 지 않 고 응용 하기에 더욱 간단 하고 직접적 이라는 것 이다.저 는 Python 을 처음 접 했 기 때문에 많은 것들 이 입문 한 지 얼마 되 지 않 았 습 니 다.현 단계 에서 Geo 를 초보 적 으로 사용 할 수 있 는 정도 에 이 르 렀 을 뿐 입 니 다.새로운 버 전 을 탐색 하 는 과정 에서 인터넷 에서 새로운 판 Pyecharts 에 대한 설명 이 매우 적 다 는 것 을 알 게 되 었 습 니 다.그래서 여기 서 자신 이 직면 한 문제 들 과 자신의 견 해 를 정리 하면 다음 과 같은 설명 과 이 해 는 비교적 얕 을 수 있 습 니 다.부디 독자 여러분 의 양 해 를 바 랍 니 다.
Geo:지리 좌표계
Geo 는 지리 적 좌표 로 표 시 된 도구 로 서 기능 적 으로 신 구 버 전 은 대체적으로 일치 하지만 세부 적 으로 큰 차이 가 있 기 때문에 신 구 코드 는 완전히 통용 되 지 않 는 다.
1.Geo:geo=Geo()만 들 기
v0.5.X 버 전에 서 geo 를 만 드 는 과정 에서 기본 적 인 매개 변 수 를 설정 할 수 있 습 니 다.
문서 의 예 를 설명 하면:
geo = Geo(" ", "data from pm2.5", title_color="#fff", title_pos="center", width=1200, height=600, background_color="#404a59", )
주 제목,부제,제목 색상 까지 도표 크기,배경 색상 등 을 설정 할 수 있 습 니 다.그러나 새 버 전에 서 이러한 형식 으로 계속 만 들 때 컴 파일 러 는 AttributeError:'str'object has no attribute'get'을 잘못 보 고 했 습 니 다.이러한 대상 은 없습니다.새 문서 에서 Geo 를 직접 만 드 는 geo=Geo()입 니 다.사실 이렇게 만 드 는 것 도 기본 입 니 다.하지만 더 많은 매개 변 수 를 설정 하고 싶다 면 물론 가능 합 니 다.
새로운 라 이브 러 리 에서 Geo 에 대한 조작 은 init 에 통일 되 어 있 습 니 다.opts 에서 이 를 변경 하려 면 클래스 opts.InitOpts 를 통일 적 으로 수정 해 야 합 니 다.여기 서 는 from pyecharts import options as opts 를 도입 해 야 호출 할 수 있 습 니 다.
구체 적 인 InitOpts 는 다음 과 같은 매개 변 수 를 포함한다.
class InitOpts(BasicOpts):
def __init__(
self,
width: str = "900px",
height: str = "500px",
chart_id: Optional[str] = None,
renderer: str = RenderType.CANVAS,
page_title: str = CurrentConfig.PAGE_TITLE,
theme: str = ThemeType.WHITE,
bg_color: Union[str, dict] = None,
js_host: str = "",
animation_opts: Union[AnimationOpts, dict] = AnimationOpts(),
):
self.opts: dict = {
"width": width,
"height": height,
"chart_id": chart_id,
"renderer": renderer,
"page_title": page_title,
"theme": theme,
"bg_color": bg_color,
"js_host": js_host,
"animationOpts": animation_opts,
}
주의해 야 할 것 은 opt.InitOpts 를 직접 설정 하면 bg 와 같은 일부 매개 변 수 를 변경 할 수 있 습 니 다.color 등,width,height 등 매개 변 수 는 고정 적 으로 수정 할 수 없습니다.예 를 들 어 이렇게 설정 하면
geo = Geo(init_opts = opts.InitOpts("aaa", width = 400, height = 200, bg_color = "#404a59"))
TypeError:init()got multiple values for argument'width'의 다 중 할당 오 류 를 보고 합 니 다.다행히 새 버 전 은 Opts 설정 항목 을 매개 변수 로 전송 하 는 것 을 제외 하고 원생 dict 를 매개 변수 로 설정 합 니 다.모든 매개 변 수 는 스스로 정의 할 수 있 습 니 다.구체 적 인 조작 코드 는?
geo = Geo(init_opts = {"width":1600,"chart_id":"ceshi","bg_color":"#404a59"})
여기 서 이상 한 현상 을 발 견 했 습 니 다.height 인 자 를 변경 할 때 지도 에 그림 이 표시 되 지 않 고 그 원인 을 알 지 못 합 니 다.2.add_schema 설정
add_schema 는 Geo 의 다음 함수 로 구체 적 인 기능 은 지도의 매개 변수 와 기능 을 설정 하 는 것 이다.주로
def add_schema(
# , pyecharts.datasets.map_filenames.json
maptype: str = "china",
# 。
is_roam: bool = True,
# 。 1
zoom: Optional[Numeric] = None,
# , 。 :center: [115.97, 29.71]
center: Optional[Sequence] = None,
# # , `series_options.LabelOpts`
label_opts: Union[opts.LabelOpts, dict, None] = None,
# 。
itemstyle_opts: Union[opts.ItemStyleOpts, dict, None] =None,
#
emphasis_itemstyle_opts: Union[opts.ItemStyleOpts, dict,None] = None,
# 。
emphasis_label_opts: Union[opts.LabelOpts, dict, None] =None,
):
여 기 는 maptype,zoom,label 만 사용 해 봤 어 요.opts 의 설정,구체 적 인 설정 은 다음 과 같 습 니 다.
geo.add_schema(maptype = "china", zoom = 1, label_opts = opts.LabelOpts(is_show=True))
maptype 은 세계 지도,성 지도 등 으로 교체 할 수 있 으 며,지도 자원 은 아래 를 통과 할 수 있 습 니 다.
pip install echarts-countries-pypkg
pip install echarts-china-provinces-pypkg
pip install echarts-china-cities-pypkg
pip install echarts-china-counties-pypkg
pip install echarts-china-misc-pypkg
zoom 은 크기 조정 설정,labelopts 는 탭 설정 입 니 다.1 의 설정 과 같이 원생 dict 를 통 해 사용자 정의 설정 을 할 수 있 습 니 다.3.add_coordinate 설정:좌표 점 추가
Geo 에 표시 해 야 할 좌표 점 을 스스로 추가 할 수 있 습 니 다.장소,경도,위도 등 세 개의 매개 변 수 를 설정 하면 추 가 를 완성 할 수 있 습 니 다.
def add_coordinate(
#
name: str,
#
longitude: Numeric,
#
latitude: Numeric,
)
이 함 수 는 구 판 과 일치 하고 응용 도 매우 간단 합 니 다.여기 서 더 이상 군말 하지 않 고 간단 한 예 를 들 어 보 겠 습 니 다.
geo.add_coordinate(" ", 120, 80)
4.add 설정:디 스 플레이 와 그림 선택이것 은 Geo 에서 가장 주요 한 함수 모듈 로 설정 할 수 있 는 매개 변수 유형 도 비교적 많 고 새로운 버 전의 add 함수 구 조 는 예전 에 비해 비교적 큰 변화 가 있 으 며 관련 매개 변 수 는 다음 과 같다.
def add(
# , tooltip ,legend 。
series_name: str,
# ( , )
data_pair: Sequence,
# Geo , scatter, effectScatter, heatmap, lines 4 ,
# from pyecharts.globals import GeoType
# GeoType.GeoType.EFFECT_SCATTER,GeoType.HEATMAP,GeoType.LINES
type_: str = "scatter",
#
is_selected: bool = True,
#
symbol: Optional[str] = None,
#
symbol_size: Numeric = 12,
# label
color: Optional[str] = None,
# , lines
is_polyline: bool = False,
# , (>=5k)
is_large: bool = False,
# 。 0 1 , 。 0.2
trail_length: Numeric = 0.2,
# 。
large_threshold: Numeric = 2000,
# , `series_options.LabelOpts`
label_opts: Union[opts.LabelOpts, dict] = opts.LabelOpts(),
# , `series_options.EffectOpts`
effect_opts: Union[opts.EffectOpts, dict] = opts.EffectOpts(),
# , `series_options.LineStyleOpts`
linestyle_opts: Union[opts.LineStyleOpts, dict] = opts.LineStyleOpts(),
# , `series_options.TooltipOpts`
tooltip_opts: Union[opts.TooltipOpts, dict, None] = None,
# , `series_options.ItemStyleOpts`
itemstyle_opts: Union[opts.ItemStyleOpts, dict, None] = None,
)
그 중에서 신 구 버 전의 가장 큰 차이 점 은 구 버 전의 장소 와 값 을 각각 attr 와 value 에 배치 하 는 것 이다.구 버 전의 전형 적 인 예 는 다음 과 같다.
from pyecharts import Geo
data = [
(" ", 9), (" ", 12), (" ", 12), (" ", 12), (" ", 14), (" ", 15)
]
geo = Geo(
" ",
"data from pm2.5",
title_color="#fff",
title_pos="center",
width=1200,
height=600,
background_color="#404a59",
)
attr, value = geo.cast(data)
geo.add("", attr, value, type="effectScatter", is_random=True, effect_scale=5)
geo.render()
새 버 전의 add 함 수 는 장소 와 값 을 데이터 항목 에 넣 었 습 니 다.
geo.add("", [attr, value], type_=ChartType.HEATMAP, symbol_size = 12, label_opts = opts.LabelOpts(is_show=False))
다른 일부 매개 변수 설정 은 대체적으로 이전 과 일치 하고 설정 방식 도 1 중의 방식 을 참조 하여 진행 할 수 있다.실행 중 재 미 있 는 문 제 를 발 견 했 습 니 다.예 를 들 어 좌 표를 표시 하고 삽입 하 는 것 과 같 습 니 다.
geo.add_coordinate(" 1", 20, 40)
geo.add("haha1", [(" 1", 60)])
geo.add_coordinate(" 2", 60, 80)
geo.add("haha2", [(" 2", 60)])
이렇게 실행 하 는 것 은 문제 가 없 지만 목록 에 있 는 항목 을 대량으로 삽입 하면
for i in range(num):
geo.add_coordinate(address[i], lng[i], lat[i])
geo.add("", [(address[i],60)])
이렇게 하면 잘못 보고 할 수 있 는데,구체 적 인 원인 은 잘 모 르 기 때문에 어 쩔 수 없 이 아래 와 같이 수정 할 수 밖 에 없다.
for i in range(num):
geo.add_coordinate(address[i], lng[i], lat[i])
geo.add("", [(address[i],60) for i in range(num)])
이런 수정 을 한 후에 문제 가 없 을 것 입 니 다.이 유 를 아 는 친구 가 있 으 면 저 에 게 메 시 지 를 남 겨 주 셔 서 대단히 감사합니다.또 주의해 야 할 문 제 는 중국 지 도 를 표시 할 때 사용 하 는 장 소 는'성','시'등 을 포함 할 수 없고'강 소','저장'등 지명 만 사용 할 수 있 으 며 그렇지 않 으 면 무효 라 는 점 이다.
마지막 으로 자신 이 실행 하고 생 성 된 레이 블 지 도 를 놓 으 려 고 하 는데 어 쩔 수 없 이 처음으로 여기에 표 시 된 글 은 그림 을 추가 하지 않 습 니 다!!
이상 은 개인 적 인 경험 이 므 로 여러분 에 게 참고 가 되 기 를 바 랍 니 다.여러분 들 도 저 희 를 많이 응원 해 주시 기 바 랍 니 다.만약 잘못 이 있 거나 완전히 고려 하지 않 은 부분 이 있다 면 아낌없이 가르침 을 주시 기 바 랍 니 다.
이 내용에 흥미가 있습니까?
현재 기사가 여러분의 문제를 해결하지 못하는 경우 AI 엔진은 머신러닝 분석(스마트 모델이 방금 만들어져 부정확한 경우가 있을 수 있음)을 통해 가장 유사한 기사를 추천합니다:
Pyecharts 지리 데이터 시각 화 방법본 고 는 주로 Pyecharts 지리 데이터 의 시각 화 를 소개 하고 여러분 에 게 공유 합 니 다.구체 적 으로 다음 과 같 습 니 다. 4.567917.상세 한 문서 와 예 를 들 어 개발 자 들 이 더 빨리...
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
CC BY-SA 2.5, CC BY-SA 3.0 및 CC BY-SA 4.0에 따라 라이센스가 부여됩니다.