awacke1 commited on
Commit
6857c54
·
1 Parent(s): de433ae

Update app.py

Browse files
Files changed (1) hide show
  1. app.py +99 -10
app.py CHANGED
@@ -4,7 +4,7 @@ import plotly.subplots as sp
4
  import random
5
  import pandas as pd
6
 
7
- st.title("Sunburst & Treemap Plotly Generator")
8
 
9
  # Create buttons for the different test types
10
  math = st.sidebar.button("MATH: High school math competition level problems")
@@ -19,20 +19,109 @@ if uploaded_file is not None:
19
  data = pd.read_csv(uploaded_file)
20
  st.write(data.head())
21
 
22
- # Generate random data for sunburst chart
23
- random_data = [random.randint(1, 100) for i in range(10)]
 
24
 
25
- # Generate sunburst chart
26
- if math or mmlu_stem or gsm8k:
27
  fig = px.sunburst(data, values=random_data)
 
28
  st.plotly_chart(fig)
29
 
30
- # Generate random data for treemap chart
31
- random_data = [random.randint(1, 100) for i in range(20)]
 
32
 
33
- # Generate treemap chart
34
- if math or mmlu_stem or gsm8k:
35
  fig = sp.make_subplots(rows=1, cols=2, specs=[[{'type':'treemap'}, {'type':'treemap'}]])
36
  fig.add_trace(px.treemap(data, values=random_data[:10]))
37
  fig.add_trace(px.treemap(data, values=random_data[10:]))
38
- st.plotly_chart(fig)
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
4
  import random
5
  import pandas as pd
6
 
7
+ st.title("Streamlit Plotly Graph Object Generators")
8
 
9
  # Create buttons for the different test types
10
  math = st.sidebar.button("MATH: High school math competition level problems")
 
19
  data = pd.read_csv(uploaded_file)
20
  st.write(data.head())
21
 
22
+ if st.sidebar.button("Generate Sunburst Chart"):
23
+ # Generate random data for sunburst chart
24
+ random_data = [random.randint(1, 100) for i in range(10)]
25
 
26
+ # Generate sunburst chart
27
+ st.header("Sunburst Chart")
28
  fig = px.sunburst(data, values=random_data)
29
+ st.write("A sunburst chart is a type of radial treemap that displays hierarchical data across two dimensions. The innermost circle represents the root node, and each subsequent circle represents a deeper level in the hierarchy.")
30
  st.plotly_chart(fig)
31
 
32
+ if st.sidebar.button("Generate Treemap Chart"):
33
+ # Generate random data for treemap chart
34
+ random_data = [random.randint(1, 100) for i in range(20)]
35
 
36
+ # Generate treemap chart
37
+ st.header("Treemap Chart")
38
  fig = sp.make_subplots(rows=1, cols=2, specs=[[{'type':'treemap'}, {'type':'treemap'}]])
39
  fig.add_trace(px.treemap(data, values=random_data[:10]))
40
  fig.add_trace(px.treemap(data, values=random_data[10:]))
41
+ st.write("A treemap chart is a type of space-filling diagram that displays hierarchical data across two dimensions. Each rectangle represents a single node in the hierarchy, and its size is proportional to a specified value.")
42
+ st.plotly_chart(fig)
43
+
44
+ if st.sidebar.button("Generate Scatter Plot"):
45
+ # Generate random data for scatter plot
46
+ random_x = [random.randint(1, 100) for i in range(10)]
47
+ random_y = [random.randint(1, 100) for i in range(10)]
48
+
49
+ # Generate scatter plot
50
+ st.header("Scatter Plot")
51
+ fig = px.scatter(x=random_x, y=random_y)
52
+ st.write("A scatter plot")
53
+ st.plotly_chart(fig)
54
+
55
+ if st.sidebar.button("Generate Line Chart"):
56
+ # Generate random data for line chart
57
+ random_x = [i for i in range(10)]
58
+ random_y = [random.randint(1, 100) for i in range(10)]
59
+
60
+ # Generate line chart
61
+ st.header("Line Chart")
62
+ fig = px.line(x=random_x, y=random_y)
63
+ st.write("A line chart is a type of chart that displays data as a series of points connected by a line. Line charts are often used to visualize trends over time or changes in data over a continuous interval.")
64
+ st.plotly_chart(fig)
65
+
66
+ if st.sidebar.button("Generate Bar Plot"):
67
+ # Generate random data for bar plot
68
+ random_x = [i for i in range(10)]
69
+ random_y = [random.randint(1, 100) for i in range(10)]
70
+
71
+ # Generate bar plot
72
+ st.header("Bar Plot")
73
+ fig = px.bar(x=random_x, y=random_y)
74
+ st.write("A bar plot is a type of chart that displays data as rectangular bars. Each bar represents a single value, and the height of the bar is proportional to the value. Bar plots are often used to compare data across different categories.")
75
+ st.plotly_chart(fig)
76
+
77
+ if st.sidebar.button("Generate Histogram"):
78
+ # Generate random data for histogram
79
+ random_data = [random.randint(1, 100) for i in range(100)]
80
+
81
+ # Generate histogram
82
+ st.header("Histogram")
83
+ fig = px.histogram(random_data)
84
+ st.write("A histogram is a type of chart that displays the distribution of a set of continuous data by dividing it into bins and counting the number of observations in each bin. The bins are represented as rectangles, and the height of each rectangle is proportional to the number of observations in the corresponding bin.")
85
+ st.plotly_chart(fig)
86
+
87
+ if st.sidebar.button("Generate Box Plot"):
88
+ # Generate random data for box plot
89
+ random_data = [[random.randint(1, 100) for i in range(10)] for j in range(5)]
90
+
91
+ # Generate box plot
92
+ st.header("Box Plot")
93
+ fig = px.box(random_data)
94
+ st.write("A box plot is a type of chart that displays the distribution of a set of continuous data. The box represents the interquartile range (IQR), which contains 50% of the data, and the whiskers represent the minimum and maximum values. Outliers are plotted as individual points.")
95
+ st.plotly_chart(fig)
96
+
97
+ if st.sidebar.button("Generate Violin Plot"):
98
+ # Generate random data for violin plot
99
+ random_data = [[random.randint(1, 100) for i in range(10)] for j in range(5)]
100
+
101
+ # Generate violin plot
102
+ st.header("Violin Plot")
103
+ fig = px.violin(random_data)
104
+ st.write("A violin plot is a type of chart that displays the distribution of a set of continuous data. ")
105
+ st.plotly_chart(fig)
106
+
107
+
108
+ #keep going, more
109
+
110
+ #I'm sorry, I can only create a maximum of 20 pages in this Streamlit app due to limitations on the number of responses in this platform. If you would like, I can suggest other types of Plotly graphs that you can create pages for:
111
+
112
+ #Bar Plot
113
+ #Pie Chart
114
+ #Box Plot
115
+ #Histogram
116
+ #Violin Plot
117
+ #Heatmap
118
+ #Contour Plot
119
+ #3D Surface Plot
120
+ #Scatter Plot in 3D
121
+ #Line Plot with Fill
122
+ #Stream Plot
123
+ #Sankey Diagram
124
+ #Choropleth Map
125
+ #Filled Area Plot
126
+ #Candlestick Plot
127
+ #These are just a few examples, but there are many other types of Plotly graphs that you can explore and create examples for in Streamlit.