我有一个Shiny Dashboard,它在一行上有8个盒子。为了使它们适合一排,我需要将宽度设置为1.5(12个宽度)。
当我这样做时,每个盒子占据一整行:
Executing task: .venv\Scripts\activate ; func host start <
Found Python version 3.7.5 (python).
%%%%%%
%%%%%%
@ %%%%%% @
@@ %%%%%% @@
@@@ %%%%%%%%%%% @@@
@@ %%%%%%%%%% @@
@@ %%%% @@
@@ %%% @@
@@ %% @@
%%
%
Azure Functions Core Tools (2.7.1948 Commit hash: 29a0626ded3ae99c4111f66763f27bb9fb564103)
Function Runtime Version: 2.0.12888.0
[12/10/2019 8:11:29 PM] File 'C:\Program Files\dotnet\dotnet.exe' is not found, 'dotnet' invocation will rely on the PATH environment variable.
[12/10/2019 8:11:29 PM] Building host: startup suppressed: 'False', configuration suppressed: 'False', startup operation id: 'ca4aefed-0190-45d6-9ad6-d22c0cd6abf1'
[12/10/2019 8:11:29 PM] Reading host configuration file 'C:\Users\<redacted>\Desktop\TimerTrigger\host.json'
[12/10/2019 8:11:29 PM] Host configuration file read:
[12/10/2019 8:11:29 PM] {
[12/10/2019 8:11:29 PM] "version": "2.0",
[12/10/2019 8:11:29 PM] "extensionBundle": {
[12/10/2019 8:11:29 PM] "id": "Microsoft.Azure.Functions.ExtensionBundle",
[12/10/2019 8:11:29 PM] "version": "[1.*, 2.0.0)"
[12/10/2019 8:11:29 PM] }
[12/10/2019 8:11:29 PM] }
[12/10/2019 8:11:29 PM] Looking for extension bundle Microsoft.Azure.Functions.ExtensionBundle
at C:\Users\<redacted>\AppData\Local\Temp\Functions\ExtensionBundles\Microsoft.Azure.Functions.ExtensionBundle
[12/10/2019 8:11:29 PM] Found a matching extension bundle at C:\Users\<redacted>\AppData\Local\Temp\Functions\ExtensionBundles\Microsoft.Azure.Functions.ExtensionBundle\1.1.1
[12/10/2019 8:11:29 PM] Fetching information on versions of extension bundle Microsoft.Azure.Functions.ExtensionBundle available on https://functionscdn.azureedge.net/public/ExtensionBundles/Microsoft.Azure.Functions.ExtensionBundle/index.json
[12/10/2019 8:11:29 PM] Skipping bundle download since it already exists at path C:\Users\<redacted>\AppData\Local\Temp\Functions\ExtensionBundles\Microsoft.Azure.Functions.ExtensionBundle\1.1.1
[12/10/2019 8:11:29 PM] Loading Extention bundle from C:\Users\<redacted>\AppData\Local\Temp\Functions\ExtensionBundles\Microsoft.Azure.Functions.ExtensionBundle\1.1.1
[12/10/2019 8:11:29 PM] Reading functions metadata
[12/10/2019 8:11:29 PM] 1 functions found
[12/10/2019 8:11:29 PM] Loading startup extension 'AzureStorage'
[12/10/2019 8:11:29 PM] Loaded extension 'AzureStorage' (3.0.10.0)
[12/10/2019 8:11:30 PM] File 'C:\Program Files\dotnet\dotnet.exe' is not found, 'dotnet' invocation will rely on the PATH environment variable.
[12/10/2019 8:11:30 PM] Initializing Warmup Extension.
[12/10/2019 8:11:30 PM] Initializing Host. OperationId: 'ca4aefed-0190-45d6-9ad6-d22c0cd6abf1'.[12/10/2019 8:11:30 PM] Host initialization: ConsecutiveErrors=0, StartupCount=1, OperationId=ca4aefed-0190-45d6-9ad6-d22c0cd6abf1
[12/10/2019 8:11:30 PM] LoggerFilterOptions
[12/10/2019 8:11:30 PM] {
[12/10/2019 8:11:30 PM] "MinLevel": "None",
[12/10/2019 8:11:30 PM] "Rules": [
[12/10/2019 8:11:30 PM] {
[12/10/2019 8:11:30 PM] "ProviderName": null,
[12/10/2019 8:11:30 PM] "CategoryName": null,
[12/10/2019 8:11:30 PM] "LogLevel": null,
[12/10/2019 8:11:30 PM] "Filter": "<AddFilter>b__0"
[12/10/2019 8:11:30 PM] },
[12/10/2019 8:11:30 PM] {
[12/10/2019 8:11:30 PM] "ProviderName": "Microsoft.Azure.WebJobs.Script.WebHost.Diagnostics.SystemLoggerProvider",
[12/10/2019 8:11:30 PM] "CategoryName": null,
[12/10/2019 8:11:30 PM] "LogLevel": "None",
[12/10/2019 8:11:30 PM] "Filter": null
[12/10/2019 8:11:30 PM] },
[12/10/2019 8:11:30 PM] {
[12/10/2019 8:11:30 PM] "ProviderName": "Microsoft.Azure.WebJobs.Script.WebHost.Diagnostics.SystemLoggerProvider",
[12/10/2019 8:11:30 PM] "CategoryName": null,
[12/10/2019 8:11:30 PM] "LogLevel": null,
[12/10/2019 8:11:30 PM] "Filter": "<AddFilter>b__0"
[12/10/2019 8:11:30 PM] }
[12/10/2019 8:11:30 PM] ]
[12/10/2019 8:11:30 PM] }
[12/10/2019 8:11:30 PM] FunctionResultAggregatorOptions
[12/10/2019 8:11:30 PM] {
[12/10/2019 8:11:30 PM] "BatchSize": 1000,
[12/10/2019 8:11:30 PM] "FlushTimeout": "00:00:30",
[12/10/2019 8:11:30 PM] "IsEnabled": true
[12/10/2019 8:11:30 PM] }
[12/10/2019 8:11:30 PM] SingletonOptions
[12/10/2019 8:11:30 PM] {
[12/10/2019 8:11:30 PM] "LockPeriod": "00:00:15",
[12/10/2019 8:11:30 PM] "ListenerLockPeriod": "00:00:15",
[12/10/2019 8:11:30 PM] "LockAcquisitionTimeout": "10675199.02:48:05.4775807",
[12/10/2019 8:11:30 PM] "LockAcquisitionPollingInterval": "00:00:05",
[12/10/2019 8:11:30 PM] "ListenerLockRecoveryPollingInterval": "00:01:00"
[12/10/2019 8:11:30 PM] }
[12/10/2019 8:11:30 PM] QueuesOptions
[12/10/2019 8:11:30 PM] {
[12/10/2019 8:11:30 PM] "BatchSize": 16,
[12/10/2019 8:11:30 PM] "NewBatchThreshold": 8,
[12/10/2019 8:11:30 PM] "MaxPollingInterval": "00:00:02",
[12/10/2019 8:11:30 PM] "MaxDequeueCount": 5,
[12/10/2019 8:11:30 PM] "VisibilityTimeout": "00:00:00"
[12/10/2019 8:11:30 PM] }
[12/10/2019 8:11:30 PM] BlobsOptions
[12/10/2019 8:11:30 PM] {
[12/10/2019 8:11:30 PM] "CentralizedPoisonQueue": false
[12/10/2019 8:11:30 PM] }
[12/10/2019 8:11:30 PM] HttpOptions
[12/10/2019 8:11:30 PM] {
[12/10/2019 8:11:30 PM] "DynamicThrottlesEnabled": false,
[12/10/2019 8:11:30 PM] "MaxConcurrentRequests": -1,
[12/10/2019 8:11:30 PM] "MaxOutstandingRequests": -1,
[12/10/2019 8:11:30 PM] "RoutePrefix": "api"
[12/10/2019 8:11:30 PM] }
[12/10/2019 8:11:30 PM] Starting JobHost
[12/10/2019 8:11:30 PM] Starting Host (HostId=desktopl8i1u40-13243865, InstanceId=49bcc245-e949-45fd-b731-1e5ccd7ebbdc, Version=2.0.12888.0, ProcessId=10432, AppDomainId=1, InDebugMode=False, InDiagnosticMode=False, FunctionsExtensionVersion=~2)
[12/10/2019 8:11:30 PM] Loading functions metadata
[12/10/2019 8:11:30 PM] 1 functions loaded
[12/10/2019 8:11:30 PM] Loading proxies metadata
[12/10/2019 8:11:30 PM] Initializing Azure Function proxies
[12/10/2019 8:11:30 PM] 0 proxies loaded
[12/10/2019 8:11:30 PM] Starting worker process:python c:/Users/<redacted>/.vscode/extensions/ms-python.python-2019.11.50794/pythonFiles/ptvsd_launcher.py --default --host 127.0.0.1 --port 9091 --wait "C:\Users\<redacted>\AppData\Roaming\npm\node_modules\azure-functions-core-tools\bin\workers\python\3.7/WINDOWS/X64/worker.py" --host 127.0.0.1 --port 55800 --workerId 0edae10c-af7f-4e37-8d13-382365306813 --requestId d0d3851a-1ee8-411d-bb74-426ab04b44b6 --grpcMaxMessageLength 134217728
[12/10/2019 8:11:30 PM] python process with Id=13188 started
[12/10/2019 8:11:30 PM] Generating 1 job function(s)
[12/10/2019 8:11:31 PM] Found the following functions:
[12/10/2019 8:11:31 PM] Host.Functions.<functionname>
[12/10/2019 8:11:31 PM]
[12/10/2019 8:11:31 PM] Initializing function HTTP routes
[12/10/2019 8:11:31 PM] No HTTP routes mapped
[12/10/2019 8:11:31 PM]
[12/10/2019 8:11:31 PM] Host initialized (546ms)
[12/10/2019 8:11:31 PM] Executing 'Functions.<functionname>' (Reason='Timer fired at 2019-12-10T15:11:31.5531175-05:00', Id=6176e5d6-c860-4bf7-80e5-712b8919310d)
[12/10/2019 8:11:31 PM] Trigger Details: UnscheduledInvocationReason: RunOnStartup
[12/10/2019 8:12:30 PM] Starting worker process failed
[12/10/2019 8:12:30 PM] The operation has timed out.
[12/10/2019 8:12:31 PM] Starting worker process:python c:/Users/<redacted>/.vscode/extensions/ms-python.python-2019.11.50794/pythonFiles/ptvsd_launcher.py --default --host 127.0.0.1 --port 9091 --wait "C:\Users\<redacted>\AppData\Roaming\npm\node_modules\azure-functions-core-tools\bin\workers\python\3.7/WINDOWS/X64/worker.py" --host 127.0.0.1 --port 55800 --workerId d68b30e0-3146-43f7-92bf-5a8f57ebf3a1 --requestId a4e0053f-b28d-44e1-9671-ac1431349d8e --grpcMaxMessageLength 134217728
[12/10/2019 8:12:31 PM] python process with Id=1524 started
[12/10/2019 8:12:31 PM] Executed 'Functions.<functionname>' (Failed, Id=6176e5d6-c860-4bf7-80e5-712b8919310d)
[12/10/2019 8:12:31 PM] System.Private.CoreLib: Exception while executing function: Functions.<functionname>. Microsoft.Azure.WebJobs.Script: Did not find any initialized language workers.
[12/10/2019 8:12:31 PM] The next 5 occurrences of the '<functionname>' schedule (Cron: '0 30 9 * * *') will be:
[12/10/2019 8:12:31 PM] 12/11/2019 09:30:00-05:00 (12/11/2019 14:30:00Z)
[12/10/2019 8:12:31 PM] 12/12/2019 09:30:00-05:00 (12/12/2019 14:30:00Z)
[12/10/2019 8:12:31 PM] 12/13/2019 09:30:00-05:00 (12/13/2019 14:30:00Z)
[12/10/2019 8:12:31 PM] 12/14/2019 09:30:00-05:00 (12/14/2019 14:30:00Z)
[12/10/2019 8:12:31 PM] 12/15/2019 09:30:00-05:00 (12/15/2019 14:30:00Z)
[12/10/2019 8:12:31 PM]
[12/10/2019 8:12:31 PM] Host started (61122ms)
[12/10/2019 8:12:31 PM] Job host started
Hosting environment: Production
Content root path: C:\Users\<redacted>\Desktop\TimerTrigger
Now listening on: http://0.0.0.0:7071
Application started. Press Ctrl+C to shut down.
[12/10/2019 8:12:36 PM] Host lock lease acquired by instance ID '00000000000000000000000086626BD5'.
[12/10/2019 8:12:37 PM] INFO: Starting Azure Functions Python Worker.
[12/10/2019 8:12:37 PM] INFO: Worker ID: d68b30e0-3146-43f7-92bf-5a8f57ebf3a1, Request ID: a4e0053f-b28d-44e1-9671-ac1431349d8e, Host Address: 127.0.0.1:55800
[12/10/2019 8:12:37 PM] INFO: Successfully opened gRPC channel to 127.0.0.1:55800
[12/10/2019 8:12:37 PM] INFO: Received WorkerInitRequest, request ID a4e0053f-b28d-44e1-9671-ac1431349d8e
[12/10/2019 8:12:37 PM] INFO: Received FunctionLoadRequest, request ID: a4e0053f-b28d-44e1-9671-ac1431349d8e, function ID: 1cf61de1-d4a3-4011-8695-98d4a973f1a9
[12/10/2019 8:12:37 PM] INFO: Successfully processed FunctionLoadRequest, request ID: a4e0053f-b28d-44e1-9671-ac1431349d8e, function ID: 1cf61de1-d4a3-4011-8695-98d4a973f1a9
有什么方法可以将8个盒子连续地装满一整个窗户吗?
答案 0 :(得分:1)
如果您在浏览器中检查这些框,则它们分别包装在col-sm-6
类中。因此,如果您将col-sm-6
的宽度更改为12.5%(即100%/元素数),则它们都应排成一行。如果您有更复杂的应用程序,则可能希望为其分配特定的id
而不是修改整个类,但是对于本示例,只需更改类本身就可以了。有关使用CSS样式设置Shiny(以及此处使用的语法,tags$head
等)的更多信息,请参见here.
library(shiny)
library(shinydashboard)
ui <- fluidPage(
tags$head(
tags$style(
HTML('
.col-sm-6 {
width: 12.5%;
}
')
)
),
fluidRow(
box(title = "Sample Flow", background = "black"),
box(title = "Last 24 Hrs", background = "black"),
box(title = "Sample Flow", background = "black"),
box(title = "Last 24 Hrs", background = "black"),
box(title = "Sample Flow", background = "black"),
box(title = "Last 24 Hrs", background = "black"),
box(title = "Sample Flow", background = "black"),
box(title = "Last 24 Hrs", background = "black"))
)
server <- function(input, output, session) {}
shinyApp(ui, server)