我正在绘制条形图 highchart.js
我不想显示x轴数据值.
谁能告诉我哪个选项呢?
完整配置:
var chart = new Highcharts.Chart({
chart: {
renderTo: container,
defaultSeriesType: 'bar'
},
title: {
text: null
},
subtitle: {
text: null
},
xAxis: {
categories: [''],
title: {
text: null
},
labels: {enabled:true,y : 20, rotation: -45, align: 'right' }
},
yAxis: {
min: 0,
gridLineWidth: 0,
title: {
text: '',
align: 'high'
}
},
tooltip: {
formatter: function () {
return '';
}
},
plotOptions: {
bar: {
dataLabels: {
enabled: true
},
pointWidth: …Run Code Online (Sandbox Code Playgroud) 我有一个调查文件,其中行是观察和列问题.
以下是一些假数据:
People,Food,Music,People
P1,Very Bad,Bad,Good
P2,Good,Good,Very Bad
P3,Good,Bad,Good
P4,Good,Very Bad,Very Good
P5,Bad,Good,Very Good
P6,Bad,Good,Very Good
Run Code Online (Sandbox Code Playgroud)
我的目标是创造这种情节ggplot2.

这是我的假数据:
raw <- read.csv("http://pastebin.com/raw.php?i=L8cEKcxS",sep=",")
raw[,2]<-factor(raw[,2],levels=c("Very Bad","Bad","Good","Very Good"),ordered=FALSE)
raw[,3]<-factor(raw[,3],levels=c("Very Bad","Bad","Good","Very Good"),ordered=FALSE)
raw[,4]<-factor(raw[,4],levels=c("Very Bad","Bad","Good","Very Good"),ordered=FALSE)
Run Code Online (Sandbox Code Playgroud)
但是,如果我选择Y作为计数,那么我将面临一个关于选择X和Group值的问题......我不知道我是否能够成功而不使用reshape2...我也厌倦了使用具有融化功能的重塑.但我不明白如何使用它...
我正在用matplotlib生成一个条形图.这一切都很好但我无法弄清楚如何防止x轴的标签相互重叠.这是一个例子:

以下是postgres 9.1数据库的一些示例SQL:
drop table if exists mytable;
create table mytable(id bigint, version smallint, date_from timestamp without time zone);
insert into mytable(id, version, date_from) values
('4084036', '1', '2006-12-22 22:46:35'),
('4084938', '1', '2006-12-23 16:19:13'),
('4084938', '2', '2006-12-23 16:20:23'),
('4084939', '1', '2006-12-23 16:29:14'),
('4084954', '1', '2006-12-23 16:28:28'),
('4250653', '1', '2007-02-12 21:58:53'),
('4250657', '1', '2007-03-12 21:58:53')
;
Run Code Online (Sandbox Code Playgroud)
这是我的python脚本:
# -*- coding: utf-8 -*-
#!/usr/bin/python2.7
import psycopg2
import matplotlib.pyplot as plt
fig = plt.figure()
# for savefig()
import pylab
###
### Connect to database …Run Code Online (Sandbox Code Playgroud) 将星星放在条形图或箱线图上以显示一组或两组之间的显着性水平(p值)是很常见的,下面是几个例子:



星数由p值定义,例如,p值<0.001时可以放3颗星,p值<0.01时可以放2颗星等等(虽然这会从一篇文章变为另一篇文章).
我的问题:如何生成类似的图表?根据显着性水平自动放置星星的方法非常受欢迎.
我知道plot_date()但是那里bar_date()有吗?
一般的方法是使用set_xticks和set_xticklabels,但是我想要能够处理从几个小时到几年的时间尺度(这意味着涉及主要和次要的刻度以使我认为可读的东西).
编辑:我意识到我正在绘制与特定时间间隔(条形跨度)相关的值.我在下面用我使用的基本解决方案更新:
import matplotlib.pyplot as plt
import datetime
t=[datetime.datetime(2010, 12, 2, 22, 0),datetime.datetime(2010, 12, 2, 23, 0), datetime.datetime(2010, 12, 10, 0, 0),datetime.datetime(2010, 12, 10, 6, 0)]
y=[4,6,9,3]
interval=1.0/24.0 #1hr intervals, but maplotlib dates have base of 1 day
ax = plt.subplot(111)
ax.bar(t, y, width=interval)
ax.xaxis_date()
plt.show()
Run Code Online (Sandbox Code Playgroud) 我的名字是大卫,我在佛罗里达州为救护车服务.
我使用的是Python 2.7和matplotlib.我正试图进入我的救护车呼叫数据库,并计算每个工作日发生的呼叫数量.
然后,我将使用matplotlib创建此信息的条形图,为医护人员提供每天有多忙的视觉图形.
这里的代码非常好:
import pyodbc
import matplotlib.pyplot as plt
MySQLQuery = """
SELECT
DATEPART(WEEKDAY, IIU_tDispatch)AS [DayOfWeekOfCall]
, COUNT(DATEPART(WeekDay, IIU_tDispatch)) AS [DispatchesOnThisWeekday]
FROM AmbulanceIncidents
GROUP BY DATEPART(WEEKDAY, IIU_tDispatch)
ORDER BY DATEPART(WEEKDAY, IIU_tDispatch)
"""
cnxn = pyodbc.connect('DRIVER={SQL Server};SERVER=MyServer;DATABASE=MyDatabase;UID=MyUserID;PWD=MyPassword')
cursor = cnxn.cursor()
GraphCursor = cnxn.cursor()
cursor.execute(MySQLQuery)
#generate a graph to display the data
data = GraphCursor.fetchall()
DayOfWeekOfCall, DispatchesOnThisWeekday = zip(*data)
plt.bar(DayOfWeekOfCall, DispatchesOnThisWeekday)
plt.grid()
plt.title('Dispatches by Day of Week')
plt.xlabel('Day of Week')
plt.ylabel('Number of Dispatches')
plt.show()
Run Code Online (Sandbox Code Playgroud)
上面显示的代码非常有效.它返回一个漂亮的图表,我很高兴.我只想做一个改变.
而不是X轴显示星期几的名称,例如"星期日",它显示整数.换句话说,星期日是1,星期一是2,等等.
我对此的修复是我重写了我的sql查询以使用DATENAME()而不是DATEPART().下面显示的是我的sql代码,用于返回星期的名称(而不是整数).
SELECT
DATENAME(WEEKDAY, IIU_tDispatch)AS …Run Code Online (Sandbox Code Playgroud) 我希望两个不同的嵌套分组变量的级别出现在图表下方的单独行中,而不是在图例中.我现在拥有的是这段代码:
data <- read.table(text = "Group Category Value
S1 A 73
S2 A 57
S1 B 7
S2 B 23
S1 C 51
S2 C 87", header = TRUE)
ggplot(data = data, aes(x = Category, y = Value, fill = Group)) +
geom_bar(position = 'dodge') +
geom_text(aes(label = paste(Value, "%")),
position = position_dodge(width = 0.9), vjust = -0.25)
Run Code Online (Sandbox Code Playgroud)

我想拥有的是这样的:

有任何想法吗?
我使用以下代码绘制条形图:
import matplotlib.pyplot as pls
my_df.plot(x='my_timestampe', y='col_A', kind='bar')
plt.show()
Run Code Online (Sandbox Code Playgroud)
情节很好.但是,我希望通过在列表中包含3列:'col_A','col_B'和'col_C'来改进图形.如下图所示:
我希望col_A在x轴上方显示为蓝色,col_B在x轴下方显示为红色,在x轴上方显示col_C为绿色.这是matplotlib中的可能吗?如何更改以绘制所有三列?谢谢!
我有一个数据集,如下所示.我试图制作一个带有分组变量性别的条形图,所有变量在x轴上并排(按性别分组为不同颜色的填充),y轴上的变量平均值(基本上代表百分比)
tea coke beer water gender
14.55 26.50793651 22.53968254 40 1
24.92997199 24.50980392 26.05042017 24.50980393 2
23.03732304 30.63063063 25.41827542 20.91377091 1
225.51781276 24.6064623 24.85501243 50.80645161 1
24.53662842 26.03706973 25.24271845 24.18358341 2
Run Code Online (Sandbox Code Playgroud)
最后我想得到一个像这样的条形图

任何建议如何做到这一点?我做了一些搜索,但我只找到x轴上的因子的例子,而不是按因子分组的变量.任何帮助将不胜感激!
我使用以下方法制作堆积条形图:
DataFrame.plot(kind='bar',stacked=True)
Run Code Online (Sandbox Code Playgroud)
我想控制条的宽度,以便条形图像直方图一样相互连接.
我查看了文档,但无济于事 - 有什么建议吗?有可能这样做吗?
bar-chart ×10
matplotlib ×5
python ×5
ggplot2 ×4
r ×4
pandas ×2
axis-labels ×1
boxplot ×1
charts ×1
datetime ×1
highcharts ×1
histogram ×1
javascript ×1
jquery ×1
p-value ×1
python-3.x ×1
reshape ×1
reshape2 ×1