flot.js - 位置垂直刻度,但被切断并居中

2023-12-25

我使用 flot.js 绘制 x 轴上带有时间戳的图表。由于我在这些图表上会有很多刻度,所以我垂直旋转它们,这样它们就不会重叠。这工作正常,但标签集中在刻度上,并且没有提供足够的空间,因此它们被切断。

我没有使用ticrotor插件滴答声 https://github.com/markrcote/flot-tickrotor。我尝试了一下,发现问题多于好处。相反,我使用的是普通的 css,这是我在 SO 上找到的旋转刻度标签 https://stackoverflow.com/questions/12204191/rotate-flot-tick-labels然而,在帖子中,他们似乎没有遇到我遇到的问题(也许那里缺少一些信息?)。

另外,我需要支持IE8。上面提到的帖子讨论了使用过滤器或-ms-filter,但没有提到实现这一点的CSS。

我的印象是,即使进行刻度旋转,它也会相应地纠正高度,但事实似乎并非如此。我还查看了 flot 的 github,虽然他们提到正在开发这个功能,但它仍然没有实现。

我知道很多人都需要旋转刻度,但我没有找到任何与我的问题类似的东西(居中和截止)。

任何帮助或想法将不胜感激。

#flot_chart div.xAxis div.tickLabel 
{
    transform: rotate(-90deg);
    -ms-transform:rotate(-90deg); /* IE 9 */
    -moz-transform:rotate(-90deg); /* Firefox */
    -webkit-transform:rotate(-90deg); /* Safari and Chrome */
    -o-transform:rotate(-90deg); /* Opera */
    /*rotation-point:50% 50%;*/ /* CSS3 */
    /*rotation:270deg;*/ /* CSS3 */
}

您自己旋转标签时会遇到很多问题。这就是为什么flot-tickrotor毕竟存在。

Flot 调整占位符 div 内画布的大小,为标签留出足够的空间。通过 CSS 旋转它们,你可以 1.) 围绕 div 的中心旋转(因此它们进入画布区域 - 提示你需要将它们向下移动)和 2.) 你溢出了 div 容器(提示 - 你需要扩展父占位符 div)。您链接到的示例有效,因为文本已换行并且旋转或不旋转的大小大致相同。

现在flot-tickrotor通过挂钩 flot 的低级代码并调整画布大小以为旋转标签腾出空间来处理这些问题(它还摆脱了标签 div 并使用画布绘制标签 - 这有助于旧的 IE)。

因此,如果您确实想自己旋转标签,请研究插件的代码并享受重新创建其功能的乐趣。

EDITS

这里尝试使用您的 CSS 并进行一些动态调整,以使内容适合:

// push the labels down half their width
// while we are at it find longest label height
var longest = -1;
$('#flot_chart .xAxis .tickLabel').each(function(){
   var self = $(this);
   var width = self.width();
   self.css('top',parseInt(self.css('top')) + width/2 - 5);
    if (width > longest){
        longest = width;
    }
});

// now adjust the chart height so we don't overflow
$("#flot_chart").height($("#flot_chart").height() + longest - $('#flot_chart .xAxis .tickLabel').height() + 5);

查看小提琴演示here http://jsfiddle.net/Ltrd6/.

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

flot.js - 位置垂直刻度,但被切断并居中 的相关文章

  • 如何获取 Google Chrome 中所有加载的 CSS 类的列表?

    有时我需要打印 CSS 类列表才能找到合适的类 最适合我的是 JS 控制台中的函数 当您键入时 JS 类列表会被加载和过滤 例如 如果我需要记住一个图像类 我输入 Img 然后加载图像类列表 ImgFolder ImgPencil var
  • 如何在 Shiny 中动态渲染的 textInput 添加样式元素

    你好堆栈溢出 在我最近提出的问题中 我已经解决了一些与动态渲染 UI 元素相关的主要问题 并在一些了不起的人的帮助下动态创建了观察者 参见此处 动态渲染的 UI 如何在第二次运行时删除旧的反应变量 https stackoverflow c
  • CSS 边框样式 INSET 或 GROOVE 看起来与 IE9 FF4 或 Safari5 或 Chrome2 非常不同

    抱歉 我是个白痴 但是当我尝试获得某种凹槽效果或插入效果作为边框样式时 我从不同的浏览器中得到了一些非常非常大的视觉结果 使用时 border 5px groove A00 or border 5px inset A00 Firefox 3
  • 对其中一个具有相同 tabindex 的焦点的所有元素应用相同的效果

    在我的上一篇文章中 我问了如何通过 css 选择器使不可聚焦的元素变得可聚焦 答案是使用tabindex 现在我希望 当具有选择器的元素获得焦点 单击 时 选择器选择的另一个元素也能获得效果 这可能听起来很奇怪 但我很久以前就可以不小心这样
  • 如何在 Rails 5 中设置资产管道以使用自定义字体?

    我必须使用自定义字体贾米尔 努里 纳斯塔莱克 http www urdujahan com urdu fonts Jameel 20Noori 20Nastaleeq zip在 Rails 5 应用程序中 我以前从未使用过 Rails 中的
  • Chrome 版 Firebug Lite 会破坏悬停效果和鼠标悬停事件

    我有一个奇怪的问题 使用时适用于 Chrome 的 Firebug Lite https chrome google com webstore detail firebug lite for google c bmagokdooijbeeh
  • 全高全宽 CSS 布局

    我正在寻找一种方法来创建具有 5 个区域的纯 CSS 无 JavaScript 布局 如下所示 H A B C F
  • Svelte 条件元素类报告为语法错误

    我正在做一个if块每if 块的精简指南 https svelte technology guide if blocks 这看起来很简单 但 Svelte 认为这是一个语法错误 svelte plugin ParseError Unexpec
  • 如何从 CSS 选择器中提取类名?

    故事 我目前正在构建一个 ESLint 规则 以警告在 CSS 选择器定位器中使用引导布局导向和角度技术类 目前我在字符串方法中使用简单的子字符串 for var i 0 i lt prohibitedClasses length i if
  • 使用flex-basis控制行上显示的项目数

    我想在使用 Flex 时将元素推出以隐藏它们 例如 如果flex basis为 50 仅显示两个项目弯曲到给定空间 而其他元素则在overflow hidden 领土 Or if flex basis为 25 则仅显示 4 个 Flex 元
  • 为什么我的 Web 组件 CSS 不显示?我没有使用shadowDOM

    我有一个没有使用 ShadowDOM 的 Native V1 组件 所以我将 CSS 放在 但是当其他人使用我的组件时 我的 CSS 就不再起作用了 仅当其组件确实使用 ShadowDOM 时才会发生这种情况 我的组件的示例代码 class
  • Flexbox 项目的完美圆形边框半径[重复]

    这个问题在这里已经有答案了 我有类似这样的项目 它们是弹性盒容器内的弹性项目 我的正常尺寸物品 我的物品被挤压 我的 CSS 看起来像这样 body display flex flex direction column align item
  • 使用css动画使div元素移动到页面的每个角落

    我想知道如何使用CSS动画使圆形div元素移动到页面的每个角落 我曾尝试这样做 但没有成功 这是一个相当基本的问题 但它会帮助我理解
  • 如何实现弧形顶部指针

    有人可以帮忙解决这个问题吗 如何仅用CSS实现附加按钮 无图像 到目前为止 这是我的代码 triangle up width 0 height 0 border left 25px solid transparent border righ
  • 仅在 Safari 中位于 div 外部的文本

    我有这个错误 让一些文本出现在右侧 div 之外的几个像素处 奇怪的是 这种情况只发生在 Safari 中 我以前从未见过它 它只是我使用过的常规 HTML CSS 我在互联网上环顾四周 但找不到完全相同的问题 由于高度固定 只有一些内容在
  • 重置 div 内容的 css 样式

    有一个用 css 样式定制的 html 页面 我无法更改此 css 该页面的一个标签被设计为动态 html 数据的容器 我怎样才能 重置 这个div的css设置 页面中定义的css样式对此div的内容没有影响 我只能访问动态 html 并且
  • CSS 圆角六边形按钮

    我可以使用 CSS 创建相同的按钮 圆角是重要部位 角是主要原因 带圆角的三角形按钮 请看我下面的代码和图片 lngbtn position relative width 150px height 50px margin 50px colo
  • 使用Java获取CSS文件中图像的URL?

    我正在尝试使用 Java 获取远程 CSS 文件中图像 所有 MIME 类型 的 URL 我正在使用 jsoup 来获取 css 的 URL 经过无数个小时的观看CSS解析器 http cssparser sourceforge net 由
  • 光标:IE 8 和 9 中的自动行为

    我想要的是为整个正文标记指定cursor pointer 这样页面的背景是可点击的 但我也希望页面的其余部分像以前一样工作 所以我尝试为div设置cursor auto 其中包含这一页 在 FF Chrome 和 safari 中 它工作得
  • 构建两列 html 表单的最佳方法?

    对齐以下内容的最佳方法是什么 我想要 inputTitle左边和右边inputInput在右边 两者之间有错误 CSS crud form width 430px margin 10px solid font family Verdana

随机推荐