UI/UX सिद्धांतों के साथ वायरफ्रेमिंग
आइए अब आपके डैशबोर्ड के लिए वायरफ्रेमिंग करें और साथ ही कुछ सिद्धांत लागू करें। ध्यान दें कि इस अभ्यास में कोई विज़ुअलाइज़ेशन रेंडर नहीं होगा.
कल्पना कीजिए कि आप Sally के लिए एक डैशबोर्ड बना रहे हैं, जिसका पोर्टफोलियो दो स्टॉक्स—Apple (AAPL) और Disney (DIS)—से बना है। आप उसके डैशबोर्ड में क्या शामिल करेंगे?
कुछ वैरिएबल जिन्हें ध्यान में रखना है: प्रत्येक स्टॉक के रोज़ाना के ओपन और क्लोज़ प्राइस जिन्हें open और close द्वारा दर्शाया गया है, साथ ही अधिकतम और न्यूनतम प्राइस जिन्हें high और low द्वारा दर्शाया गया है। एक अन्य महत्वपूर्ण वैरिएबल दिन का ट्रेडिंग वॉल्यूम है (अर्थात उस दिन ट्रेड हुए शेयरों की संख्या), जिसे volume द्वारा दर्शाया गया है.
इस अभ्यास में आपके लिए shinydashboard और shiny लाइब्रेरी शामिल कर दी गई हैं, और server() नाम का एक खाली फंक्शन सेव किया गया है.
यह अभ्यास पाठ्यक्रम का हिस्सा है
shinydashboard के साथ डैशबोर्ड बनाना
इंटरैक्टिव व्यावहारिक अभ्यास
इस अभ्यास को इस नमूना कोड को पूरा करके आज़माएँ।
library(shinydashboard)
library(shiny)
header <- dashboardHeader(
title = "Portfolio dashboard for Sally",
titleWidth = 300
)
sidebar <- dashboardSidebar(
width = 300,
sidebarMenu(
id = "pages",
menuItem("Historical trends",
tabName = "historical"),
menuItem("Profits and Losses (PnLs)",
tabName = "profit",
icon = icon("money-bill-alt"),
# Truncate the number in the badge label to 2 decimal places
badgeLabel = "+2.324815454862%",
# Change the badge color to green
badgeColor = "red")
)
)
body <- dashboardBody(tabItems(
tabItem(tabName = "historical",
fluidRow(box(selectInput("stock", "Select stock symbol",
choices=c("AAPL", "DIS"))),
box("Stock name", width = 6)),
fluidRow(box("valueBox", "Open", width = 2),
box("valueBox", "High", width = 2),
box("valueBox", "Low", width = 2),
box("valueBox", "Close", width = 2),
box("valueBox", "Volume", width = 2)),
fluidRow(box("valueBox", "Open % change", width = 2, color = "red"),
box("valueBox", "High % change", width = 2),
box("valueBox", "Low % change", width = 2),
box("valueBox", "Close % change", width = 2),
box("valueBox", "Volume % change", width = 2))),
tabItem(tabName = "profit",
fluidRow(box("valueBox", "Account balance", width = 3),
box("valueBox", "Value at Risk (Var)", width = 3),
box("valueBox", "Returns", width = 3),
box("valueBox", "Profit-to-loss ratio", width = 3)),
fluidRow(box("PnL chart", width = 12, height = 400)))
)
)
ui <- dashboardPage(header, sidebar, body)
server <- function(input, output){}
shinyApp(ui, server)