все.
Меня спросили, потому что я хотел выразить график, выраженный в градусах, как показано в коде ниже. Ниже значения, относящиеся к столбцу в CSV-файле, отображаются на графике.
Но на приведенном ниже графике есть только несколько столбцов, но в моем текущем проекте у нас будет около 45 столбцов.
Поэтому, если количество столбцов невелико, я хочу нарисовать график, как показано ниже, но слишком много графиков для рисования. И я написал код, и я не знал, что делать, поэтому я задал вопрос. Что я должен делать?
Если вы посмотрите на код ниже,
Это грубая форма кода, используемого для рисования графика, над которым мы сейчас работаем.
import plotly.plotly as py
import plotly.graph_objs as go
import pandas as pd
df = pd.read_csv("https://raw.githubusercontent.com/plotly/datasets/master/hobbs-pearson-trials.csv")
data = [
go.Scatterpolargl(
r = df.trial_1_r,
theta = df.trial_1_theta,
mode = "markers",
name = "Trial 1",
marker = dict(
color = "rgb(27,158,119)",
size = 15,
line = dict(
color = "white"
),
opacity = 0.7
)
),
go.Scatterpolargl(
r = df.trial_2_r,
theta = df.trial_2_theta,
mode = "markers",
name = "Trial 2",
marker = dict(
color = "rgb(217,95,2)",
size = 20,
line = dict(
color = "white"
),
opacity = 0.7
)
),
go.Scatterpolargl(
r = df.trial_3_r,
theta = df.trial_3_theta,
mode = "markers",
name = "Trial 3",
marker = dict(
color = "rgb(117,112,179)",
size = 12,
line = dict(
color = "white"
),
opacity = 0.7
)
),
go.Scatterpolargl(
r = df.trial_4_r,
theta = df.trial_4_theta,
mode = "markers",
name = "Trial 4",
marker = dict(
color = "rgb(231,41,138)",
size = 22,
line = dict(
color = "white"
),
opacity = 0.7
)
),
go.Scatterpolargl(
r = df.trial_5_r,
theta = df.trial_5_theta,
mode = "markers",
name = "Trial 5",
marker = dict(
color = "rgb(102,166,30)",
size = 19,
line = dict(
color = "white"
),
opacity = 0.7
)
),
go.Scatterpolargl(
r = df.trial_6_r,
theta = df.trial_6_theta,
mode = "markers",
name = "Trial 6",
marker = dict(
color = "rgb(230,171,2)",
size = 10,
line = dict(
color = "white"
),
opacity = 0.7
)
)
]
layout = go.Layout(
title = "Hobbs-Pearson Trials",
font = dict(
size = 15
),
showlegend = False,
polar = dict(
bgcolor = "rgb(223, 223, 223)",
angularaxis = dict(
tickwidth = 2,
linewidth = 3,
layer = "below traces"
),
radialaxis = dict(
side = "counterclockwise",
showline = True,
linewidth = 2,
tickwidth = 2,
gridcolor = "white",
gridwidth = 2
)
),
paper_bgcolor = "rgb(223, 223, 223)"
)
fig = go.Figure(data=data, layout=layout)
py.iplot(fig, filename='polar-webgl')
Это код, который я сейчас использую в своем проекте.
Если вы посмотрите на код ниже, вы прочитаете соответствующую информацию из файла CSV.
Однако, поскольку он дает 45 столбцов, я работал с Formun. Но из кода, над которым мы работаем, мы задаемся вопросом, как нарисовать один график из 45 столбцов.
Что мне делать?
import pandas as pd
import csv
import serial
import time
df = pd.read_csv("C:/Users/Jangsu/Desktop/ssssssssscccc.csv")
data = [
for i in range(1,46):
go.Scatterpolar(
r=df["Save datas(Angle)"+str(i)],
theta=str(i)+"°",
mode="marker",
name="Angle"+str(i)+"°",
marker = dict(
color = stored_angle[i]
size = 15,
line = dict(
color = "white"
),
opacity = 0.7
)
]
layout = go.Layout(
title = "Hobbs- Trials",
font = dict(
size = 15
),
showlegend = False,
polar = dict(
bgcolor = "rgb(255, 255, 255)",
angularaxis = dict(
tickwidth = 2,
linewidth = 3,
layer = "below traces"
),
radialaxis = dict(
side = "counterclockwise",
showline = True,
linewidth = 2,
tickwidth = 2,
gridcolor = "white",
gridwidth = 2
)
),
paper_bgcolor = "rgb(223, 223, 223)"
)
fig = go.Figure(data=data, layout=layout)
py.iplot(fig, filename='polar-webgl')
Код выше теперь зависит от меня. Как вы можете нарисовать график из 45 столбцов в том месте, где вы рисуете график?
Для вашей информации, вы можете проверить тип графика, который я хочу нарисовать по адресу, который я оставляю.
https://plot.ly/python/polar-chart/