zoukankan      html  css  js  c++  java
  • Pyecharts 可视化操作CSV文件 (bar,radar)

    import pandas as pd
    from pyecharts import options as opts
    from pyecharts.globals import ThemeType
    from pyecharts.charts import Bar ,Pie,Radar
    file_name = "C:\Users\dgd71\Desktop\大学\创新实验\python学习\数据\newbaby.csv"
    def bar_chart(x,y): #写一个柱状表(x轴,y轴)
    bar =(
    Bar() #创建对象
    .add_xaxis(list(data[x])) #为x轴添加数据
    .add_yaxis(y,list(data[y])) # 必须先写y轴字符串名,数据类型必须是列表型。
    .set_global_opts(title_opts=opts.TitleOpts(title="新生儿出生体长", subtitle="男女婴"))
    )
    return bar.render()
    def radar_picture(x,y,z,w,t): #自定义一个雷达图函数(病人1,病人2,病人3,病人4,病人5)
    patient1 =[list(patient_data.loc[x])[1:7]] #先取行,再转换成列表切片。
    patient2 =[list(patient_data.loc[y])[1:7]]
    patient3 =[list(patient_data.loc[z])[1:7]]
    patient4 =[list(patient_data.loc[w])[1:7]]
    patient5 =[list(patient_data.loc[t])[1:7]]
    c_schema =[ {"name":"怀孕次数","max":max(patient_data["Pregnancies"])},
    {"name":"口服葡萄糖耐量试验中血浆葡萄糖浓度为2小时", "max": max(patient_data["Glucose"])},
    {"name": "舒张压(mm Hg)", "max": max(patient_data["BloodPressure"])},
    {"name": "肱三头肌皮褶厚度(mm)", "max": max(patient_data["SkinThickness"])},
    {"name": "2小时血清胰岛素(μU/ ml)", "max": max(patient_data["Insulin"])},
    {"name": "BMI身体质量指数(体重kg /(身高m)^ 2)", "max": max(patient_data["BMI"])},
    ]
    rader = Radar()
    rader.add_schema(c_schema)
    rader.add("病人1",patient1,color="#90ff00")
    rader.add("病人2",patient2,color="#203f70")
    rader.add("病人3",patient3,color="#301ff0")
    rader.add("病人4",patient4, color="#00ff00")
    rader.add("病人5",patient5)
    rader.set_series_opts(label_opts=opts.LabelOpts(is_show=False))
    rader.set_global_opts(
    title_opts=opts.TitleOpts(title="患病因数"), #标题
    )
    # rader =(
    # Radar()
    # .add_schema(
    # schema=[
    # opts.RadarIndicatorItem(name="怀孕次数",max_=20),
    # opts.RadarIndicatorItem(name="口服葡萄糖耐量试验中血浆葡萄糖浓度为2小时", max_=200),
    # opts.RadarIndicatorItem(name="舒张压(mm Hg)", max_=130),
    # opts.RadarIndicatorItem(name="肱三头肌皮褶厚度(mm)", max_=50),
    # opts.RadarIndicatorItem(name="2小时血清胰岛素(μU/ ml)", max_=600),
    # opts.RadarIndicatorItem(name="BMI身体质量指数(体重kg /(身高m)^ 2)", max_=50),
    #
    # ]
    # )
    # .add("病人1",patient1)
    # .add("病人2",patient2)
    # .add("病人3",patient3)
    # .set_series_opts(label_opts=opts.LabelOpts(is_show=False))
    # .set_global_opts(
    # legend_opts=opts.LegendOpts(selected_mode="single"),
    # title_opts=opts.TitleOpts(title="患病因数"),
    # )
    # )
    return rader.render()


    if __name__ == "__main__":
    try:
    patient_data = pd.DataFrame(pd.read_csv("diabetesP1.csv"))
    data = pd.read_csv(file_name)
    radar_picture(3,23,8,129,89)
    #bar_chart("gender","newBabyHeight")
    except FileNotFoundError:
    print("文件没有存在")

  • 相关阅读:
    假期第九天
    假期第八天
    8.9周总结
    构建之法阅读笔记之三
    构建之法阅读笔记之二
    构建之法阅读笔记之一
    03人月神话阅读笔记之一
    手机输入法使用评价
    十天冲刺-第十天
    十天冲刺-第九天
  • 原文地址:https://www.cnblogs.com/D007/p/13967895.html
Copyright © 2011-2022 走看看