1. 程式人生 > >Echarts提示框(tooltip)位置設定

Echarts提示框(tooltip)位置設定

Echarts提示框(tooltip)浮層位置,不設定時,預設位置會跟隨滑鼠的位置。

但是,當提示框位置超出圖表所在區域時,就可能出現提示框顯示不全的問題,如下所示:

         

這就需要我們去設定提示框位置

1、設定提示框位置的方法

方法一:通過陣列設定提示框位置

陣列第一個元素設定距離父元素左邊的距離,陣列第二個元素設定距離父元素上邊的距離

這種方法設定的提示框位置固定不變,不會隨滑鼠移動而位置變化

(1)數字設定絕對位置 position: [20, 20]

        tooltip: {
          trigger: 'axis',
          position: [20, 20]
          // 等價於
          // position: ['20px', '20px']
        },

(2)百分比設定相對位置 position: ['50%', '50%']

        tooltip: {
          trigger: 'axis',
          // 相對位置
          position: ['50%', '30%']
        },

方法二、直接設定position的值為:'inside'|'top'|'bottom'|'left'|'right'

這種方法只在設定   trigger: 'item',   的時候才有效

  • 'inside'  滑鼠所在圖形的內部中心位置

  • 'top'  滑鼠所在圖形上側

  • 'left'  滑鼠所在圖形左側

  • 'right'  滑鼠所在圖形右側

  • 'bottom'  滑鼠所在圖形底側

        tooltip: {
          trigger: 'item',
          position: 'top'
        },

方法三、通過回撥函式設定提示框位置

回撥函式中有:

五個引數

point:滑鼠位置,是一個數組,如 [20, 50]

params:Object|Array.<Object>  是需要的資料集

dom:tooltip 的 dom 物件。

rect:一個物件,只有滑鼠在圖形上時有效,是一個用  x, y, width, height

   四個屬性表達的圖形包圍盒。

size:一個物件,包括 dom 的尺寸和 echarts 容器的當前尺寸,例如:{contentSize: [width, height], viewSize: [width, height]}

size中有兩個屬性:viewSize為外層div的大小,contentSize為tooltip提示框的大小

一個返回值:
(1)返回值可以是一個表示 tooltip 位置的陣列,陣列值可以是絕對畫素值,也可以是相對百分比。

        tooltip: {
          trigger: 'axis',
          position: function (point, params, dom, rect, size) {
            return ['40%', 30];
          }
        },

(2)返回值也可以是一個物件

物件的屬性有:top、bottom、left、right

          position: function (point, params, dom, rect, size) {
            return {left: '40%', bottom: 20};
          }

2、設定提示框位置隨滑鼠移動,並解決提示框顯示不全的問題

position: function (point, params, dom, rect, size) {
  // 滑鼠座標和提示框位置的參考座標系是:以外層div的左上角那一點為原點,x軸向右,y軸向下
  // 提示框位置
  var x = 0; // x座標位置
  var y = 0; // y座標位置

  // 當前滑鼠位置
  var pointX = point[0];
  var pointY = point[1];

  // 外層div大小
  // var viewWidth = size.viewSize[0];
  // var viewHeight = size.viewSize[1];

  // 提示框大小
  var boxWidth = size.contentSize[0];
  var boxHeight = size.contentSize[1];

  // boxWidth > pointX 說明滑鼠左邊放不下提示框
  if (boxWidth > pointX) {
    x = 5;
  } else { // 左邊放的下
    x = pointX - boxWidth;
  }

  // boxHeight > pointY 說明滑鼠上邊放不下提示框
  if (boxHeight > pointY) {
    y = 5;
  } else { // 上邊放得下
    y = pointY - boxHeight;
  }

  return [x, y];
}

相關推薦

Echarts提示tooltip位置設定

Echarts提示框(tooltip)浮層位置,不設定時,預設位置會跟隨滑鼠的位置。 但是,當提示框位置超出圖表所在區域時,就可能出現提示框顯示不全的問題,如下所示:           這就需要我們去設定提示框位置 1、設定提示框位置的方法 方法一:通過陣列設定提

警告提示UIAlertController的用法

import UIKit class ViewController: UIViewController { override func viewDidLoad() { super.viewDidLoad() }

C# 簡單的等待提示BackgroundWorker

using System; using System.ComponentModel; using System.Threading; using System.Windows.Forms; namespace WindowsFormsApplication1 {     pu

JavaSwing圖形介面程式設計之訊息提示

package three.day.frame; import java.awt.BorderLayout; import java.awt.Container; import java.awt.GridLayout; import java.awt.event

BootStrap之 提示工具Tooltip插件

fun sheet utf-8 gin 默認 toggle html static 必須 <!DOCTYPE html> <html> <head> <meta charset="utf-8"> <ti

前端 自定義確認提示

上一篇有自定義提示框,前端 自定義彈出框-提示框(一),這篇推薦一個確認框的實現。 JS預設確認框 確認框 var result=confirm('確認刪除XX檔案?');result為bool型別 回覆確認框 var result=prompt('請輸入檔案標題:');result返回輸入的值

Extjs之自動消失提示Ext example msg

分享一下我老師大神的人工智慧教程!零基礎,通俗易懂!http://blog.csdn.net/jiangjunshow 也歡迎大家轉載本篇文章。分享知識,造福人民,實現我們中華民族偉大復興!        

Bootstrap模態modal,並新增帶複選的表格table,還可做提示、檔案選擇等,很實用!

      Bootstrap中的模態框外掛以彈出對話方塊的形式出現,具有最小和最實用的功能集,主要的是使用起來很靈活!有以下幾個特性:(1)不支援同時開啟多個模態框;(2)務必將模態框的 HTML 程式碼放在文件的最高層級內(也就是說,儘量作為 body 標籤的直接子元素)

安卓系統自帶提示 帶取消 確定按鈕

private void showCoverDialog(){ AlertDialog.Builder builder = new AlertDialog.Builder(context); builder.setTitle("提示"); builder.setMess

leaflet 在地圖popup彈中新增按鈕並點選響應vue2leaflet設定popup的content屬性,新增button

效果如圖,點選【進入】按鈕,彈出alert提示框。當然這裡可以把alert換成其他響應需求。  首先給popup的content新增button: <l-popup :content="profile1-1+ '<br><button id=

JQ外掛:獲取文字textarea內的所選字元和游標位置索引值-selection

(function($){ $.fn.selection = function(){ var s,e,range,stored_range; if(this[0].selectionStart == undefined){ var selection=document.selection; i

BCB提示資訊MessageBox的應用

應用程式中的提示資訊處理程式是非常出重要的部分,使用者要知道他輸入的資料到底正不正確,或者是應用程式有一些提示資訊要告訴使用者,都必須通過提示資訊處理程式來顯示適當的資訊,讓使用者瞭解下一步該如何配置。提示資訊有很多種類,包括警告,錯誤,提示,確認,重試等。不同種類的提示資訊

Android 輸入的輸入提示效果AutoCompleteTextView

在一些體驗較好的APP中,輸入框輸入時會有相應的提示,讓人能夠很快的通過點選提示進入下一步這裡,我就通過自己構思,實現了一個通過 SharedPreferences 儲存的輸入提示 demo實現:1、實現一個 SharedPreferences 以及其 get、set方法2、

微信小程式自制提示具有輸入文字功能

微信小程式自帶的API中的頁面互動功能,雖然提示功能非常全面,但是所有的互動API中是沒有可以自己在提示框中輸入文字的功能,那麼現在我們來自己做這樣的一個提示框(可以帶有輸入功能),在提示框輸入完內容之後,點選確定,可以將文字內容返回,點選取消則可以回到之前的狀態。(在這裡,

【WPF】自動完成/智慧提示的文字AutoCompleteBox

使用了外掛WPFToolKit。(直接在Nuget中搜即可) 使用方法參考這篇文章: 但是光參考上面的文章做還是有些小問題的,下面是我用WAF框架(MVVM)的一個小例子: ShellWindow.xaml <Window x:Clas

C# 中的MessageBox 彈出提示訊息的用法

剛好用到MessageBox  ,所以就在網上查著學習了一下。 MessageBox.Show(<字串> Text, <字串> Title, <整型> nType,MessageBoxIcon); 它的格式就是上面這個, 第一個引數是

iOS帶有勾選提示封裝程式碼

/* 使用說明 此提示框的使用方法和系統的提示框類似,完全封裝好原始碼,只需要呼叫兩句程式碼即可 主要需求:1.增加選中以後不再顯示按鈕需求;如果不需要可以遮蔽          2.所有字型

android實現下拉spinner,自定義大小顏色背景位置

1. 實現最簡單的spinner xml檔案,有一個TextView,一個Spinner: <RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"      xmlns:to

Bootstrap的工具提示Tooltip

在html中引入bootstrap的css和js,然後在需要提示的標籤上加上: data-toggle="tooltip" data-placement="bottom" title="我是提示語

一個常見的下拉css

absolute html color align z-index font ext css ado <!DOCTYPE html><html> <head> <meta charset="utf-8"> <titl